다음을 통해 공유


계층적 구성 모델

이 샘플에서는 서비스의 구성 파일 계층 구조를 구현하는 방법을 보여 줍니다. 또한 계층 구조의 상위 수준에서 바인딩, 서비스 동작 및 끝점 동작이 상속되는 방식을 보여 줍니다.

샘플 세부 정보

.NET Framework 버전 4에서 WCF용으로 개발된 기능 중 하나는 향상된 계층적 구성 모델입니다. 계층적 구성 모델의 예로는 Machine.config -> Rootweb.config -> Web.config로 정의되는 구성 모델이 있습니다. .NET Framework 4에서는 명시적으로 구성할 필요 없이 구성 계층 구조의 상위 수준에 정의된 바인딩 및 동작이 서비스에 추가됩니다. 이 샘플에서는 컴퓨터 또는 응용 프로그램 수준에 정의된 구성 요소를 사용하여 서비스 구성을 단순화하는 방법을 보여 줍니다.

이 샘플은 계층 구조의 세 수준에 정의된 9개의 서비스로 구성되어 있습니다. Service1은 루트에 있으며 Service2Service3Service1에서 기본 요소를 상속합니다. Service4, Service5, Service6Service7은 계층 구조의 세 번째 수준에 정의되어 있으며 Service3에서 기본 요소를 상속합니다. 마지막으로 Service10Service11은 계층 구조의 네 번째 수준에 있습니다.

모든 서비스는 IDesc 계약을 구현합니다. 다음은 이 인터페이스에 노출되는 메서드를 보여 주는 IDesc 인터페이스의 정의입니다. IDesc 인터페이스는 Service1.cs에 정의되어 있습니다.

    // Define a service contract
    [ServiceContract(Namespace="http://Microsoft.Samples.ConfigHierarchicalModel")]
    public interface IDesc
    {
        [OperationContract]
        List<string> ListEndpoints();
        [OperationContract]
        List<string> ListServiceBehaviors();
        [OperationContract]
        List<string> ListEndpointBehaviors();
    }

서비스에서 이러한 메서드를 구현하는 과정은 간단합니다. ListEndpoints는 모든 서비스 끝점을 반복하고 서비스에 있는 모든 끝점의 목록을 반환합니다. ListServiceBehaviors는 서비스에 추가된 모든 동작을 반복하고 서비스와 관련된 모든 서비스 동작의 목록을 반환합니다. ListEndpointBehaviors는 끝점 동작의 목록을 반환한다는 점을 제외하고는 ListServiceBehaviors와 유사한 방식으로 동작합니다.

이 구현을 통해 클라이언트는 서비스에서 노출하는 끝점 수와 서비스에 추가된 서비스 동작 및 끝점 동작을 알 수 있습니다. 샘플의 일부로 구현된 클라이언트에서는 솔루션의 모든 서비스에 대한 서비스 참조를 추가하고 각 서비스에 대한 이러한 요소를 보여 줍니다.

이 샘플을 사용하려면

클라이언트를 실행하려면

  1. Visual Studio 2010에서 ConfigHierarchicalModel.sln 파일을 엽니다.

  2. 클라이언트 프로젝트가 아직 시작 프로젝트로 설정되지 않은 경우 다음 단계를 따릅니다.

    1. 솔루션 탐색기에서 솔루션을 마우스 오른쪽 단추로 클릭하고 속성을 선택합니다.

    2. 공용 속성에서 시작 프로젝트를 선택한 다음 한 개의 시작 프로젝트를 클릭합니다.

    3. 한 개의 시작 프로젝트 드롭다운에서 Client를 선택합니다.

    4. 확인을 클릭하여 대화 상자를 닫습니다.

  3. F6 키를 눌러 샘플을 빌드합니다.

  4. Ctrl+F5를 눌러 클라이언트를 실행합니다.

Ee663221.note(ko-kr,VS.100).gif참고:
이러한 단계가 제대로 수행되지 않으면 다음 단계를 따라 사용 환경이 올바르게 설정되었는지 확인하십시오.

  1. Windows Communication Foundation 샘플의 일회 설치 절차를 수행했는지 확인합니다.

  2. 솔루션을 빌드하려면 Windows Communication Foundation 샘플 빌드의 지침을 따릅니다.

  3. 단일 또는 다중 컴퓨터 구성에서 샘플을 실행하려면 Running the Windows Communication Foundation Samples의 지침을 따릅니다.

Ee663221.Important(ko-kr,VS.100).gif 참고:
컴퓨터에 이 샘플이 이미 설치되어 있을 수도 있습니다. 계속하기 전에 다음(기본) 디렉터리를 확인하십시오.

<InstallDrive>:\WF_WCF_Samples

이 디렉터리가 없으면 Windows Communication Foundation (WCF) and Windows Workflow Foundation (WF) Samples for .NET Framework 4로 이동하여 WCF(Windows Communication Foundation) 및 WF 샘플을 모두 다운로드하십시오. 이 샘플은 다음 디렉터리에 있습니다.

<InstallDrive>:\WF_WCF_Samples\WCF\Basic\Services\ConfigHierarchicalModel