<provider> 요소(인스턴스)

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

채널 싱크 체인에 삽입할 채널 싱크의 공급자를 포함합니다.

<configuration>

   <system.runtime.remoting>

      <channels>

         <channel>

            <serverProviders>

               <provider/>

여기에 지정된 공급자는 기본 서버 공급자를 재정의하여 이 채널 템플릿의 새 기본 공급자가 됩니다.

<configuration>

   <system.runtime.remoting>

      <channels>

         <channel>

            <clientProviders>

               <provider/>

여기에 지정된 공급자는 기본 클라이언트 공급자를 재정의하여 이 채널 템플릿의 새 기본 공급자가 됩니다.

<configuration>

   <system.runtime.remoting>

      <application>

         <channels>

            <channel>

               <serverProviders>

                  <provider/>

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

<configuration>

   <system.runtime.remoting>

      <application>

         <channels>

            <channel>

               <clientProviders>

                  <provider/>

여기에 지정된 클라이언트 공급자는 이 채널 인스턴스의 기본 공급자를 재정의합니다.

<provider 
    ref="ProviderTemplateReference"
   type="ProviderType, ProviderAssembly"
   customChannelSinkProperty="customProperty"
/>

선택적 특성

특성 설명

customChannelSinkProperty

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

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

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

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

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

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

필수 특성

특성 설명

type

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

ref

클라이언트에서 등록하여 사용하려는 채널 싱크의 채널 싱크 공급자 템플릿 ID를 지정합니다. ref 특성을 설정하면 type 특성을 지정하지 않아도 됩니다.

설명

다른 공급자 템플릿의 id 값을 이 인스턴스의 ref 값으로 사용하면 해당 템플릿을 참조할 수 있습니다. 공급자를 지정하면 모든 기본 공급자가 재정의됩니다. 채널 싱크 호출 체인 동안 다른 공급자도 호출되도록 하려면 해당 공급자를 여기에 지정해야 합니다.

<provider> 요소의 인스턴스는 네 가지 위치에 사용할 수 있습니다. <channel> 템플릿의 <serverProviders> 또는 <clientProviders> 요소에 지정하면 이 요소는 응용 프로그램 인스턴스에서 해당 채널을 참조할 때마다 채널의 기본 싱크 공급자가 되는 공급자를 지정합니다. <application> 요소에 지정하면, 이 요소는 이 채널이 템플릿인 경우에 구성되었을 수 있는 모든 기본 싱크를 재정의합니다. 여기에 지정하는 공급자는 다른 모든 템플릿에 지정된 모든 기본값을 재정의하므로, 호출 체인에 포함시킬 다른 공급자가 있는 경우에는 여기에 모두 지정해야 합니다.

예제

다음 구성 파일에서는 <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>

요구 사항

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

참고 항목

참조

원격 설정 스키마

개념

싱크 및 싱크 체인

빌드 날짜: 2010-02-13