<clientProviders> 요소(인스턴스)

이 항목은 이전 버전의 기존 응용 프로그램과의 호환성을 위해 유지되고 있으나 새로운 개발에는 권장되지 않는 레거시 기술에 대해 설명합니다. 분산 응용 프로그램은 이제 WCF(Windows Communication Foundation)를 사용하여 개발됩니다.

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

<configuration>

<system.runtime.remoting>

<channels>

<channel>

<clientProviders>

여기에 지정된 공급자는 채널 템플릿이 참조될 때마다 이 채널의 기본 공급자를 재정의합니다.

<configuration>

<system.runtime.remoting>

<application>

<channels>

<channel>

<clientProviders>

여기에 지정된 공급자는 이 채널 인스턴스의 기본 공급자만 재정의합니다.

<clientProviders> 
      <formatter/> 
      <provider/> 
</clientProviders>

자식 요소

요소 설명

<formatter>

채널 싱크 호출 체인에 삽입할 포맷터 싱크를 포함하며 <clientProviders> 인스턴스 요소에 한 번만 사용할 수 있습니다.

<provider>

채널 싱크 호출 체인에 삽입할 채널 싱크를 포함하며 <clientProviders> 인스턴스 요소에 한 번 이상 사용할 수 있습니다.

설명

이 요소를 채널 템플릿 요소에 사용하면, 표시된 수준의 참조되거나 선언된 모든 공급자는 채널의 기본 공급자를 재정의하며 구성 파일의 다른 위치에서 채널이 참조되는 경우에는 기본 공급자가 됩니다. 이 요소를 사용하면 이 채널의 모든 기본 공급자 및 포맷터가 재정의됩니다. 따라서, 사용자 지정 공급자와 함께 이러한 기본 공급자 및 포맷터를 채널 템플릿의 일부로 사용하기 위해서는 이 채널이 참조될 때 사용할 공급자 및 포맷터를 모두 지정해야 합니다.

이 요소를 채널 인스턴스에 사용하는 경우, 표시된 수준의 참조되거나 선언된 모든 공급자는 이 채널 인스턴스의 기본 채널 공급자만 재정의합니다. 이 인스턴스가 clientProviders를 선언하는 템플릿을 참조하는 경우, 여기에 지정한 공급자는 clientProviders도 모두 재정의합니다.

예제

다음 구성 파일에서는 <channels> 템플릿 요소를 사용하여 id가 "httpbinary"인 HttpChannel을 선언하고 <clientProviders> 템플릿 요소를 사용하여 원격 호출을 serialize하는 BinaryClientFormatterSink를 지정합니다. 그런 다음 <application> 요소 안의 <channel> 인스턴스 요소에 ref="httpbinary"를 지정하여 이 클라이언트 응용 프로그램에서 해당 채널 구성을 사용하도록 요청합니다. 마지막으로, <clientProviders> 인스턴스 요소를 사용하여 "propsetter" 채널 싱크 공급자를 추가하고 해당 채널 싱크 공급자가 사용할 사용자 지정 구성 요소 중 일부를 전달합니다. 전역 어셈블리 캐시에 있는 어셈블리에서 형식을 지정하기 위해 type 특성을 사용하려면 버전, 문화권 및 공개 키 정보를 포함한 모든 형식 정보를 지정해야 합니다. 아래 type 특성에서는 간단하게 나타내기 위해 이 정보가 생략되었습니다.

<configuration>
   <system.runtime.remoting>
      <channelSinkProviders>
         <clientProviders>
            <provider 
               id="propsetter" 
               type="ChannelSinkPropertySetterProvider, PropsSink" 
            />
         </clientProviders>
      <channels>
         <channel 
            type="System.Runtime.Remoting.Channels.Http.HttpChannel, System.Runtime.Remoting" 
            id="httpbinary"
         >
            <clientProviders>
               <formatter                   type="System.Runtime.Remoting.Channels.BinaryClientFormatterSinkProvider, System.Runtime.Remoting"
               />
            </clientProviders>
         </channel>
      </channels>
      <application>
         <channels>
            <channel ref="httpbinary">
               <clientProviders>
                  <provider 
                     ref="propsetter" 
                     username="somename" 
                     writeToConsole="true"
                  >
                     <endpoint url="contoso.com:9000" someProp="xyz" />
                     <endpoint url="contoso.com:9001" someProp="123" />
                  </provider>
               </clientProviders>
            </channel>
         </channels>
         <client>
            <wellknown 
               url="http://computername:80/RemoteType.rem"                type="RemoteType, RemoteAssembly"
            />
         </client>
      </application>
   </system.runtime.remoting>
</configuration>

요구 사항

구성 파일: 응용 프로그램 구성 파일, 컴퓨터 구성 파일(Machine.config)

참고 항목

참조

원격 설정 스키마

개념

싱크 및 싱크 체인

빌드 날짜: 2010-02-13