[C#] 10.3 전용 어셈블리

이번에는 앞에서 만든 어셈블리를 전용으로 사용하는 방법에 대해 살펴보기로 합시다.

전용 어셈블리는 사용하는 응용 프로그램과 함께 어셈블리를 배포하여 해당 응용 프로그램에서 전용으로 이용하는 어셈블리를 말합니다. 배포 위치는 응용 프로그램과 같은 디렉토리이거나 하위 디렉토리입니다.

CLR은 참조하는 전용 어셈블리의 위치를 찾는 일도 수행하는데 프로빙이라 합니다. 제일 먼저 응용 프로그램 디렉토리를 먼저 검사하고 없으면 구성 파일에 명시된 디렉토리를 검사하게 됩니다. 구성 파일은 응용 프로그램 구성 파일과 게시자 정책 파일, 시스템 구성 파일이 있으며 자세한 사항은 MSDN 런타임에서 어셈블리를 찾는 방법을 참고하세요.

그리고 .NET에서 어셈블리 배포 방법은 기본으로 전용이며 통합 개발 환경인 Microsoft Visual Studio를 가지고 개발할 때 특정 어셈블리를 참조하고 컴파일하면 자동으로 참조하는 어셈블리를 출력 폴더로 복사해 주어 개발자에게 편의성을 제공하고 있습니다. 솔루션 탐색기에서 참조 폴더에 마우스 우측 버튼을 클릭하여 나오는 컨텍스트 메뉴에서 참조 추가를 선택하여 원하는 어셈블리를 선택하세요.

참조 추가창에서 추가할 어셈블리 선택하기
[그림 10.3] 참조 추가창에서 추가할 어셈블리 선택하기

 Microsoft Visual Studio에서 콘솔 응용 프로그램 프로젝트를 생성하여 작성한 어셈블리를 사용하는 코드를 작성합시다. 물론 MemberLib에서 public으로 지정하지 않은 MemberInfo 형식과 멤버는 사용하지 못합니다.

using System;
using MemberLib;
namespace UsingMemberLIb
{
    class Program
    {
        static void Main(string[] args)
        {
            Member member = new Member("홍길동", "대한민국");
            Console.WriteLine("이름:{0} 주소:{1}", member.Name, member.Addr);
        }
    }
}

▶ 실행 결과

이름:홍길동 주소:대한민국