다음을 통해 공유


<provider> 요소(템플릿)

서버 또는 클라이언트 채널 싱크 체인에 삽입할 채널 싱크의 채널 싱크 공급자 템플릿을 포함합니다. 이 요소를 포함시킬 때는 두 가지 계층 구조를 사용할 수 있습니다.

<configuration>

  <system.runtime.remoting> 요소

    <channelSinkProviders> 요소

      <clientProviders> 요소(인스턴스)

        <provider> 요소(템플릿)

<provider  
   id="ProviderID" 
   type="ProviderType, ProviderAssembly"    
   customChannelSinkProperty="customProperty"
/>

특성 및 요소

다음 단원에서는 특성, 자식 요소 및 부모 요소에 대해 설명합니다.

특성

특성 설명

id

필수 특성입니다.

이 채널 싱크 공급자를 식별하는 문자열입니다. 다른 요소에서 이 문자열을 해당 ref 특성에 사용하여 이 채널 싱크 공급자에 바인딩할 수도 있습니다.

type

필수 특성입니다.

채널 싱크 공급자의 전체 형식 이름 및 공급자 구현이 들어 있는 어셈블리 이름을 지정합니다. 포함하는 어셈블리가 전역 어셈블리 캐시에 있는 경우 버전, 문화권 및 공개 키 정보도 여기에 포함됩니다.

customChannelSinkProperty

선택적 특성입니다.

지원되는 사용자 지정 채널 싱크 속성을 나타냅니다. 사용자 지정 채널 싱크 공급자와 해당 공급자 싱크에서 지원하는 공급자 및 채널 싱크 속성 수는 원하는 만큼 지정할 수 있습니다. 사용자 지정 채널 싱크 속성에는 특성/값 쌍이 지정됩니다. 예제:

<provider id="CustomChannelSinkProvider" type="Namespace.CustomChannelSinkProvider, CustomChannels" customChannelSinkProperty="ChannelSinkPropertyValue"/>

이 예제에서 customChannelSinkProperty 특성과 그 값은 공급자의 생성자에 있는 IDictionary 인수로 사용할 수 있습니다.

여기에 사용자 지정 싱크 공급자 데이터도 지정할 수 있는데, 한 수준의 노드만 지원됩니다. 예제:

<provider ref="custom">
<extra data="value"/>
<extra data="AnotherValue"/>
</provider>

이 예제에서 추가 정보는 공급자의 생성자에서 SinkProviderDataICollection으로 사용할 수 있습니다.

자식 요소

없음

부모 요소

요소 설명

channelSinkProviders

클라이언트 및 서버 채널 싱크 공급자가 사용할 수 있는 템플릿을 포함합니다. 이 요소에 지정된 모든 채널 싱크 공급자는 채널 싱크 공급자가 등록된 모든 위치에서 참조될 수 있습니다.

clientProviders

구성 파일의 다른 위치에서 이 템플릿을 참조할 때 해당 채널 템플릿에 대한 클라이언트측 기본 채널 싱크 호출 체인의 일부로 사용될 채널 싱크 공급자를 포함합니다. 아래의 두 위치에 공급자를 지정하면 이 채널에 대한 기본 채널 싱크가 재정의됩니다. 기본 채널 싱크 중에서 이 템플릿에 대한 채널 싱크 호출 체인에 삽입할 채널 싱크가 있다면 여기에 함께 지정해야 합니다.

configuration

공용 언어 런타임 및 .NET Framework 응용 프로그램에서 사용하는 모든 구성 파일의 루트 요소입니다.

system.runtime.remoting

원격 개체 및 채널에 대한 정보를 포함합니다.

예제

다음 구성 파일에서는 <provider> 인스턴스 요소를 사용하여 "propsetter" 및 "null" 채널 싱크 공급자(<provider> 템플릿 요소를 사용하여 선언됨)를 HttpChannel에 할당합니다. 여기에서 "propsetter" 채널 싱크 공급자는 공급자 인스턴스 요소의 특성 및 자식 <endpoint> 특성의 이름/값 쌍으로 지정된 사용자 지정 공급자 속성을 사용하여 만들어집니다.

<configuration>
   <system.runtime.remoting>
      <application>
         <client>
            <wellknown 
               type="RemoteType, RemoteAssembly"
               url="http://computername:8080/RemoteType.rem"/>
         </client>
         <channels>
            <channel ref="http">
               <clientProviders>
                  <formatter ref="soap"/>
                  <provider 
                     ref="propsetter" 
                     username="bob" 
                     writeToConsole="true"
                  >
                     <endpoint url="contoso.com:9000" someProperty="xyz" />
                     <endpoint url="contoso.com:9001" someProperty="123" />
                  </provider>
                  <provider ref="null" writeToConsole="true" />
               </clientProviders>
            </channel>
         </channels>
      </application>
      <channelSinkProviders>
         <clientProviders>
            <provider 
               id="propsetter" 
               type="ChannelSinkPropertySetterProvider, SinkAssembly" 
            />
            <provider 
               id="null" 
               type="NullSinkProvider, SinkAssembly" 
            />
         </clientProviders>
      </channelSinkProviders>
      <debug loadTypes="true" />
   </system.runtime.remoting>
</configuration>

참고 항목

참조

원격 설정 스키마

개념

싱크 및 싱크 체인

Footer image

Copyright © 2007 by Microsoft Corporation. All rights reserved.