.NET Framework(C# 작업 절차)
업데이트: 2007년 11월
이 페이지에서는 일반적으로 사용되는 .NET Framework 작업에 대한 도움말의 링크를 제공합니다. 도움말에서 다루는 일반적인 작업의 다른 범주를 보려면 C# 작업 절차를 참조하십시오.
일반
C# 언어 및 .NET Framework 소개
C# 언어 및 .NET Framework 클래스 라이브러리와 런타임 실행 엔진 간의 관계에 대해 설명합니다..NET Framework의 개요
공용 언어 런타임, .NET Framework 클래스 라이브러리 및 언어 간 상호 운용성과 같은 .NET Framework의 주요 기능의 간단한 개념을 제공합니다.주요 기술 빠른 찾기
.NET Framework의 주요 기술 영역에 대한 빠른 참조를 제공합니다.
파일 I/O
방법: 디렉터리 목록 만들기
새 디렉터리를 만드는 방법에 대해 설명합니다.방법: 새로 만든 데이터 파일 읽기 및 쓰기
새로 만든 데이터 파일을 읽고 쓰는 방법에 대해 설명합니다.방법: 로그 파일 열기 및 추가
로그 파일을 열고 텍스트를 추가하는 방법에 대해 설명합니다.방법: 파일에 텍스트 쓰기
파일에 텍스트를 쓰는 방법에 대해 설명합니다.방법: 파일의 텍스트 읽기
파일에서 텍스트를 읽는 방법에 대해 설명합니다.방법: 문자열에서 문자 읽기
문자열에서 문자를 읽는 방법에 대해 설명합니다.방법: 문자열에 문자 쓰기
문자열에 문자를 쓰는 방법에 대해 설명합니다.방법: 액세스 제어 목록 항목 추가 또는 제거
보안 향상을 위해 ACL(액세스 제어 목록) 항목을 추가하고 제거하는 방법에 대해 설명합니다.
문자열
새 문자열 만들기
새 문자열을 만드는 방법에 대해 설명합니다.문자 트리밍 및 제거
문자열의 시작이나 끝에서 문자를 제거하는 방법에 대해 설명합니다.문자열 채우기
문자열의 시작이나 끝에 탭 또는 공백을 추가하는 방법에 대해 설명합니다.문자열 비교
두 문자열이 같은지 비교하는 방법에 대해 설명합니다.대/소문자 바꾸기
대문자를 소문자로 또는 반대로 변환하는 방법에 대해 설명합니다.StringBuilder 클래스 사용
효율적인 문자열 조작 기술에 대해 설명합니다.방법: 기본적인 문자열 작업을 통해 문자열 조작 수행
문자열을 분할하고, 한 문자열을 다른 문자열에 추가하는 등의 작업 방법에 대해 설명합니다.System.Convert를 사용하여 데이터 형식 변환
Convert 클래스를 사용하여 문자열 값을 부울 값으로 변환하는 예제를 제공합니다.방법: 문자열에서 유효하지 않은 문자 제거
정적 Regex.Replace 메서드를 사용하여 문자열에서 유효하지 않은 문자를 제거하는 예제를 제공합니다.방법: 문자열이 올바른 전자 메일 형식인지 확인
정적 Regex.IsMatch 메서드를 사용하여 문자열이 유효한 전자 메일 형식인지 확인하는 예제를 제공합니다.
컬렉션
컬렉션 및 데이터 구조
.NET Framework 컬렉션 클래스의 개요를 제공합니다.Collection 클래스 선택
사용할 컬렉션 형식을 결정하는 방법에 대해 설명합니다.제네릭 컬렉션 사용 기준
제네릭이 아닌 컬렉션 클래스에 비해 제네릭 컬렉션 클래스가 가지는 이점에 대해 설명합니다.System.Collections.Generic
제네릭 컬렉션 클래스에 대한 포털 페이지입니다.List<T>
List<T> 컬렉션에서 항목을 추가하고 제거하는 방법을 보여 주는 예제 코드를 제공합니다.SortedDictionary<TKey, TValue>
SortedDictionary<K,V> 컬렉션에서 키/값 쌍을 추가하고 제거하는 방법을 보여 주는 예제 코드를 제공합니다.
예외
방법: Catch 블록에 특정 예외 사용
try/catch 블록을 사용하여 InvalidCastException을 catch하는 예제를 제공합니다.방법: Try/Catch 블록을 사용하여 예외 catch
try/catch 블록을 사용하여 발생 가능한 예외를 catch하는 코드 예제를 포함합니다.방법: 사용자 정의 예외 만들기
Exception에서 새 예외 클래스인 EmployeeListNotFoundException을 파생시키는 예제를 제공합니다.방법: Finally 블록 사용
try/catch 블록을 사용하여 ArgumentOutOfRangeException을 catch하는 예제를 제공합니다.방법: 명시적으로 예외 Throw
try/catch 블록을 사용하여 FileNotFoundException 예외를 catch하는 코드 예제를 포함합니다.
이벤트
방법: Windows Forms 응용 프로그램에서 이벤트 사용
Windows Form의 단추 클릭 이벤트를 처리하는 방법을 보여 주는 예제를 제공합니다.방법: 이벤트에 이벤트 처리기 메서드 연결
이벤트에 대한 이벤트 처리기 메서드를 추가하는 방법을 보여 주는 예제를 제공합니다.방법: 이벤트 발생 및 사용
"이벤트 및 대리자"와 "이벤트 발생"에 자세히 설명된 개념을 사용하는 예제를 제공합니다.방법: 이벤트 속성을 사용하여 여러 이벤트 처리
이벤트 속성을 사용하여 여러 이벤트를 처리하는 방법을 보여 주는 예제를 제공합니다.방법: 클래스에 이벤트 구현
클래스에서 이벤트를 구현하는 방법을 보여 주는 절차를 제공합니다.
디버깅
디버깅(C# 작업 절차)을 참조하십시오.
배포
보안(C# 작업 절차)을 참조하십시오.
어셈블리와 응용 프로그램 도메인
방법: 어셈블리에서 형식 및 멤버 정보 가져오기
어셈블리에서 형식 및 멤버 정보를 가져오는 예제를 제공합니다.방법: 단일 파일 어셈블리 만들기
명령줄 컴파일러를 사용하여 단일 파일 어셈블리를 만드는 절차를 제공합니다.방법: 응용 프로그램 도메인 만들기
새 응용 프로그램 도메인을 만들고 이름을 MyDomain으로 지정한 다음 호스트 도메인 및 새로 만들어진 자식 응용 프로그램 도메인의 이름을 콘솔에 출력합니다.방법: 어셈블리의 정규화된 이름 식별
지정된 클래스가 포함된 어셈블리의 정규화된 이름을 콘솔에 표시하는 방법을 보여 줍니다.방법: 응용 프로그램 도메인 구성
AppDomainSetup 클래스의 인스턴스를 만들고, 이 클래스를 사용하여 새 응용 프로그램 도메인을 만들고, 정보를 콘솔에 출력한 다음 응용 프로그램 도메인을 언로드합니다.방법: 어셈블리 내용 보기
기본적인 "Hello, World" 프로그램에서 시작하여, Ildasm.exe를 통해 Hello.exe 어셈블리를 디스어셈블하여 어셈블리 매니페스트를 표시하는 방법을 보여 주는 예제를 제공합니다.방법: 강력한 이름의 어셈블리 참조
myAssembly.cs라는 코드 모듈에서 myLibAssembly.dll이라는 강력한 이름의 어셈블리를 참조하는 myAssembly.dll이라는 어셈블리를 만드는 방법에 대해 설명합니다.방법: 응용 프로그램 도메인 언로드
MyDomain이라는 새 응용 프로그램 도메인을 만들고 일부 정보를 콘솔에 출력한 다음 응용 프로그램 도메인을 언로드합니다.방법: 전역 어셈블리 캐시에서 어셈블리 제거
전역 어셈블리 캐시에서 hello.dll이라는 어셈블리를 제거하는 예제를 제공합니다.방법: 전역 어셈블리 캐시에 어셈블리 설치
전역 어셈블리 캐시에 파일 이름이 hello.dll인 어셈블리를 설치하는 예제를 제공합니다.방법: 다중 파일 어셈블리 빌드
다중 파일 어셈블리를 만드는 데 사용되는 절차에 대해 설명하고 절차의 단계를 보여 주는 전체 예제를 제공합니다.방법: 응용 프로그램 도메인에 어셈블리 로드
어셈블리를 현재 응용 프로그램 도메인에 로드한 다음 실행하는 예제를 제공합니다.방법: 강력한 이름으로 어셈블리 서명
sgKey.snk 키 파일을 사용하여 강력한 이름으로 MyAssembly.dll 어셈블리에 서명하는 예제를 제공합니다.방법: 전역 어셈블리 캐시의 내용 보기
전역 어셈블리 캐시 도구(Gacutil.exe)를 사용하여 전역 어셈블리 캐시의 내용을 표시하는 방법을 보여 줍니다.방법: 공개/개인 키 쌍 만들기
강력한 이름으로 어셈블리에 서명하는 방법 및 강력한 이름 도구(Sn.exe)를 사용하여 키 쌍을 만드는 방법을 보여 줍니다.
상호 운용성
방법: .NET 기반 응용 프로그램에 Win32 리소스로 형식 라이브러리 포함
NET Framework 기반 응용 프로그램에 형식 라이브러리를 Win32 리소스로 포함시키는 방법을 보여 줍니다.방법: Tlbimp.exe를 사용하여 주 Interop 어셈블리 생성
Tlbimp.exe를 사용하여 주 interop 어셈블리를 생성하는 예제를 제공합니다.방법: 수동으로 주 Interop 어셈블리 만들기
수동으로 주 interop 어셈블리를 만드는 예제를 제공합니다.방법: 형식 라이브러리에서 Interop 어셈블리 생성
형식 라이브러리에서 interop 어셈블리를 생성하는 예제를 제공합니다.방법: COM 싱크에서 처리하는 이벤트 발생
이벤트 소스로 관리되는 서버를 사용하고 이벤트 싱크로 COM 클라이언트를 사용하는 예제를 제공합니다.방법: 런타임 호출 가능 래퍼 사용자 지정
IDL 소스 또는 가져온 어셈블리를 수정하여 런타임 호출 가능 래퍼를 사용자 지정하는 방법을 보여 줍니다.방법: 등록이 필요 없는 활성화를 위한 .NET 기반 구성 요소 구성
등록이 필요 없는 활성화를 사용하기 위해 .NET Framework 기반 구성 요소를 구성하는 방법에 대해 설명합니다.방법: 콜백 함수 구현
플랫폼 호출을 사용하는 관리되는 응용 프로그램에서 로컬 컴퓨터의 각 창에 대한 핸들 값을 출력하는 방법을 보여 줍니다.방법: HRESULT 및 예외 매핑
NoAccessException이라는 새 예외 클래스를 만들고 HRESULT E_ACCESSDENIED에 매핑하는 예제를 제공합니다.방법: interop 어셈블리 편집
MSIL(Microsoft Intermediate Language)의 마샬링 변경 내용을 지정하는 방법을 보여 줍니다.방법: 형식 라이브러리에 참조 추가
형식 라이브러리에 참조를 추가하는 단계에 대해 설명합니다.방법: COM 소스에서 발생하는 이벤트 처리
Internet Explorer 창을 열고 InternetExplorer 개체에 의해 발생된 이벤트를 관리 코드로 구현된 이벤트 처리기에 연결하는 방법을 보여 주는 예제를 제공합니다.방법: 수동으로 래퍼 만들기
IDL에 있는 ISATest 인터페이스 및 SATest 클래스와 C# 소스 코드에 있는 해당 형식의 예를 보여 줍니다.방법: 주 Interop 어셈블리 등록
CompanyA.UtilLib.dll 주 interop 어셈블리를 등록하는 예제를 제공합니다.방법: 여러 버전의 형식 라이브러리 래핑
형식 라이브러리의 버전을 둘 이상 래핑하는 방법에 대해 설명합니다.
보안
보안(C# 작업 절차)을 참조하십시오.
Serialization
방법: 개체 Deserialize
개체를 파일로 deserialize하는 예제를 제공합니다.방법: XML 스키마 정의 도구를 사용하여 클래스 및 XML 스키마 문서 생성
XML 스키마 정의 도구를 사용하여 클래스 및 XML 스키마 문서를 생성하는 방법을 보여 주는 절차를 제공합니다.방법: XML 스트림의 대체 요소 이름 지정
동일한 클래스 집합을 사용하여 XML 스트림을 두 개 이상 생성하는 방법을 보여 줍니다.방법: 파생 클래스의 Serialization 제어
파생 클래스의 serialization을 제어하는 방법을 보여 주는 예제를 제공합니다.방법: 개체를 SOAP 인코딩된 XML 스트림으로 Serialize
개체를 SOAP 인코딩된 XML 스트림으로 serialize하는 절차 및 예제를 제공합니다.방법: Serialize된 데이터 청크
서버측 청크와 클라이언트측 처리를 구현하는 절차 및 예제를제공합니다.
방법: 개체 Serialize
개체를 serialize하는 절차를 제공합니다.방법: XML 요소 및 XML 특성 이름 한정
XML 문서에서 정규화된 이름을 만드는 절차 및 예제를 제공합니다.방법: 인코딩된 SOAP XML Serialization 재정의
SOAP 메시지로 serialization된 개체를 재정의하는 절차 및 예제를 제공합니다.
인코딩 및 지역화
방법: 유니코드 숫자 구문 분석
여러 스크립트에서 Decimal.Parse 메서드를 사용하여 숫자를 나타내는 유니코드 코드 값 문자열을 구문 분석하는 예제를 제공합니다.방법: 사용자 지정 Culture 만들기
사용자 지정 문화권을 정의하고 만드는 절차를 제공합니다.
고급 프로그래밍
방법: 동적 메서드 정의 및 실행
단순한 동적 메서드 및 클래스의 인스턴스에 바인딩된 동적 메서드를 정의하고 실행하는 방법을 보여 줍니다.방법: 리플렉션을 사용하여 제네릭 형식 검사 및 인스턴스화
제네릭 형식을 찾고 조작하는 방법을 보여 주는 절차를 제공합니다.방법: 리플렉션 내보내기를 사용하여 제네릭 메서드 정의
리플렉션 내보내기를 사용하는 제네릭 메서드를 정의하는 방법을 보여 주는 절차를 제공합니다.방법: 전체 서명을 사용하여 동적 어셈블리에 강력한 이름 지정
완전 서명을 사용하여 동적 어셈블리에 강력한 이름을 지정하는 방법을 보여 줍니다.방법: 리플렉션 전용 컨텍스트에 어셈블리 로드
리플렉션 전용 컨텍스트에 어셈블리를 로드하는 방법을 보여 주는 절차 및 코드 예제를 제공합니다.방법: 리플렉션 내보내기를 사용하여 제네릭 형식 정의
두 개의 매개 변수를 사용하는 간단한 제네릭 형식을 만드는 방법, 형식 매개 변수에 클래스 제약 조건, 인터페이스 제약 조건 및 특수 제약 조건을 적용하는 방법 및 매개 변수 형식과 반환 형식으로 클래스의 형식 매개 변수를 사용하는 멤버를 만드는 방법을 보여 줍니다.
.NET Framework 연습
연습: Windows Forms 구성 요소에 스마트 태그 추가
표준 Windows Forms Label 컨트롤에서 파생된 간단한 예제 컨트롤인 ColorLabel의 코드를 사용하여 스마트 태그를 추가하는 방법을 보여 줍니다.연습: SOAP 확장을 사용하여 SOAP 메시지 변경
SOAP 확장을 작성하고 실행하는 방법을 보여 줍니다.연습: ASP.NET을 사용하여 기본적인 XML Web services 빌드
ASP.NET을 사용하여 기본 XML Web services를 작성하는 방법을 보여 줍니다.연습: ASP.NET 모바일 웹 페이지를 특정 장치에 맞게 사용자 지정
특정 장치에 대해 사용자 지정하는 방법을 보여 줍니다.연습: 서비스 설명 및 프록시 클래스의 생성 사용자 지정
서비스 설명 및 프록시 클래스 생성을 사용자 지정하는 방법을 보여 줍니다.연습: ClickOnce 응용 프로그램 수동 배포
매니페스트 생성 및 편집 도구(Mage)의 명령줄 버전 또는 그래픽 버전을 사용하여 전체 ClickOnce 배포를 만드는 데 필요한 단계에 대해 설명합니다.연습: ClickOnce 배포 API에서 요청 시 어셈블리 다운로드
응용 프로그램의 특정 어셈블리를 "선택적"인 것으로 표시하는 방법과 CLR(공용 언어 런타임)에서 요청할 때 System.Deployment.Application 네임스페이스의 클래스를 사용하여 이러한 어셈블리를 다운로드하는 방법을 보여 줍니다.연습: UI 형식 편집기 구현
사용자 지정 형식에 대한 고유 UI 형식 편집기를 작성하고 PropertyGrid를 사용하여 편집 인터페이스를 표시하는 방법에 대해 설명합니다.
추가 리소스
Visual Studio 2005 Developer Center
Visual Studio를 사용하여 응용 프로그램을 개발하는 방법에 대한 다양한 문서 및 리소스가 포함되어 있습니다. 이 사이트는 정기적으로 업데이트되어 새로운 콘텐츠를 제공합니다.Visual C# Developer Center
C# 응용 프로그램을 개발하는 방법에 대한 다양한 문서 및 리소스가 포함되어 있습니다. 이 사이트는 정기적으로 업데이트되어 새로운 콘텐츠를 제공합니다.Microsoft .NET Framework Developer Center
.NET Framework 응용 프로그램을 개발하고 디버깅하는 방법에 대한 다양한 문서 및 리소스가 포함되어 있습니다. 이 사이트는 정기적으로 업데이트되어 새로운 콘텐츠를 제공합니다.