개발 공부 25

[C# 학습] 폼1 -> 폼2 데이터 전송(다른 폼에 데이터(클래스) 전송, 이벤트 이용)

- 이벤트를 이용하여 폼1에서 폼2로 데이터를 전송하는 방법. 1. 데이터를 보내려는 폼(DataSendForm)에서 delegate, event 키워드로 이벤트를 생성한다. //DataSendForm public delegate void DataSendHandler(MyClass myclass); public event DataSendHandler DataSendEvent; 2. 데이터를 보내려는 폼(DataSendForm)에서 버튼 클릭 시 이벤트를 호출하여 데이터를 전송한다. //DataSendForm private void btn_Click(object sender, EventArgs e) { DataSendEvent(sendData()); } public MyClass sendData() { M..

[C# 학습] OleDbConnection, OleDbCommand, OleDbDataAdapter, OleDbDataReader

OleDbConnection 데이터 소스에 대해 열려 있는 연결을 나타낸다. Overload Description OleDbConnection() OleDbConnection 클래스의 새 인스턴스를 초기화. OleDbConnection(String) 지정된 연결 문자열을 이용하여 새 인스턴스를 초기화. OleDbCommand SQL문이나 데이터 소스에 실행할 저장 프로시저를 나타낸다. Overload Description OleDbCommand() OleDbCommand 클래스의 새 인스턴스 초기화. OleDbCommand(String) 쿼리 텍스트로 OleDbCommand의 새 인스턴스 초기화. OleDbCommand(String, OleDbConnection) 쿼리 텍스트, OleDbConnectio..

[C# 학습] .NET Framework 데이터 공급자

.NET Framework 데이터 공급자 데이터베이스에 연결, 명령 실행 및 결과 검색에 이용된다. → 검색된 결과는 곧바로 처리되거나 DataSet에 저장됨. → 필요한 경우 ① 사용자에게 노출되거나, ② 여러 소스의 데이터와 함께 사용되거나, ③ 계층 간에 원격으로 사용된다. .NET Framework 데이터 공급자(Data Provider) 종류 종류 기능 namespace .NET Framework Data Provider for SQL Server 수 System.Data.SqlClient .NET Framework Data Provider for OLE DB 정 System.Data.OleDb .NET Framework Data Provider for ODBC 중 System.Data.Odbc..

[C# 학습] SqlConnection, SqlCommand, SqlDataAdapter

SqlConnection 클래스 SQL Server를 접속하기 위한 클래스. SQL 서버를 사용하려면 클라이언트 프로그램이 먼저 서버와 접속해야 함. → 접속 시 사용하는 Connection String 필요. → 서버 명, 인증 방법, 초기 DB명 등 지정. 예시) //1 string strConn1 = "Data Source=[서버 주소];Initial Catalog=[DB명];Integrated Security=SSPI;"; //2 string strConn2 = "Data Source=[서버 주소];Initial Catalog=[DB명];User ID=[아이디];Password=[비밀번호];"; SqlConnection conn = new SqlConnection(strConn); conn.Ope..

[C# 학습] 데이터베이스 엔진 인증 모드(Windows 인증 방식, SQL 인증 방식)

서버 인증 모드에는 Windows 인증 방식과 SQL 인증 방식이 있다. 1) Windows 인증 방식 - Windows에서 사용자 ID를 확인한다. → SQL Server는 암호를 요청하지 않고 ID의 유효성 검사를 수행하지 않는다. - 기본 인증 모드 → SQL Server 인증보다 훨씬 더 안정하다. - SqlConnection 클래스를 이용하여 서버와 접속하기 위해 필요한 Connection String → Case: Windows 인증 방식 //Connection String string strConn = "Data Source=[서버주소];Initial Catalog=[DB명];Integrated Security=SSPI;"; 2) SQL 인증 방식 - 사용자 이름과 암호가 SQL Server..

[C# 학습] Microsoft.ACE.OLEDB.12.0 공급자는 로컬 컴퓨터에 등록할 수 없습니다. (오류 해결)

Microsoft.ACE.OLEDB.12.0 공급자는 로컬 컴퓨터에 등록할 수 없습니다. 오류 원인 PC가 64-bit 환경일 때, 64-bit OLE DB 제공자는 설치되어 있지만 32-bit인 Visual Studio에서는 64-bit 용 OLE DB 제공자를 찾아 사용할 수 없기 때문. → 32-bit 버전의 OLE DB 제공자인 aceoledb.dll 설치 필요. 설치 방법 1) 사이트 방문. https://www.microsoft.com/ko-kr/download/details.aspx?id=13255 Download Microsoft Access Database Engine 2010 재배포 가능 패키지 from Official Microsoft Download Center 중요! 아래에서 언어..

[C# 학습] 엑셀 파일 생성 및 저장하기(코드, Marshal 클래스, 에러 해결)

※ 해당 게시글의 코드는 직접 작성한 코드가 아닙니다. 참조한 사이트는 하단에 기재하였습니다. 해당 코드로 실습 후 발견한 에러 해결 과정만 제가 작성하였으니 참고 바랍니다. 1) 실습 코드 using Microsoft.Office.Interop.Excel; //엑셀 사용을 위한 참조 추가 using System.Runtime.InteropServices; //사용할 엑셀 객체들을 해제(release)해주기 위한 참조 추가 namespace Sample { class Program { static void Main(string[] args) { //엑셀 사용을 위한 인스턴스 생성 Application excelApp = new Application(); //엑셀 파일 생성(워크북 생성) Workbook ..

[C# 기초] 메서드 오버로딩(Method Overloading), 디폴트 매개변수(Default Parameter)

1. 메서드 오버로딩(Method Overloading) 데이터 타입이 다른 경우, 함수 이름이 같더라도 사용할 수 있다. → 컴파일러가 매개 변수의 형식과 개수를 분석하여 어떤 함수를 호출할 지 찾아낸다. public void Load(int num, bool loading = false) { Load(1.2); } public void Load(double num, bool loading = false) { ... } 2. 디폴트 매개변수(Default Parameter) 기본값이 제공된 매개변수 - 기본값 설정한 경우(디폴트 매개변수) //파라미터에 기본값 설정 public void Load1(int num, bool loading = false) { ... } Load1(1) //에러 X Load..

[C# 기초] ExpandoObject(인스턴스 생성/속성, 메서드, 이벤트 추가)

ExpandoObject 클래스 런타임(Run time)에 동적으로 추가 및 제거할 수 있는 멤버 개체. → 런타임? 더보기 https://it-amin.tistory.com/74 [C# 기초] 컴파일(Compile), 런타임(Run time) 컴파일(Complie) 소스파일을 기계어로 변환. 런타임(Run time) 컴파일을 마친 응용 프로그램이 동작되는 때(time). it-amin.tistory.com - 네임스페이스 System.Dynamic - 인스턴스 생성 dynamic 오브젝트명 = new ExpandoObject(); - 인스턴스에 속성, 메서드 및 이벤트 추가 속성, 메서드 using System; using System.Dynamic; dynamic Obj = new ExpandoObj..

728x90
반응형