1.5.3 전용 어셈블리

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

전용 어셈블리는 사용하는 응용 프로그램과 함께 어셈블리를 배포하여 해당 응용 프로그램에 의해서만 이용하는 어셈블리를 말합니다.

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

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

 Microsoft Visual Studio에서 콘솔 응용 프로그램 프로젝트를 생성하여 작성한 어셈블리를 사용하는 코드를 작성해 봅시다.

▶ .NET 어셈블리를 참조하여 사용하는 응용 프로그램 예

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);
        }
    }
}

▶ 실행 결과

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

물론 MemberLib에서 public으로 지정하지 않은 MemberInfo 형식과 멤버는 사용하지 못합니다.

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