次の方法で共有


<provider> 要素 (テンプレート)

サーバーまたはクライアントのチャネル シンク チェーンに挿入されるチャネル シンクのチャネル シンク プロバイダ テンプレートを指定します。階層内で、この要素を含めることができる位置は 2 つあります。

<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 引数として使用できます。

ここには、カスタム シンク プロバイダのデータも指定できます。サポートされるノードのレベルは 1 つだけです。次に例を示します。

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

この追加情報は、プロバイダのコンストラクタで SinkProviderDataICollection として使用できます。

子要素

なし。

親要素

要素 説明

channelSinkProviders

クライアントおよびサーバーのチャネル シンク プロバイダのテンプレートを指定します。この要素に指定したチャネル シンク プロバイダは、チャネル シンク プロバイダを登録できる場所なら、どこからでも参照できます。

clientProviders

対象のチャネル テンプレートが構成ファイル内の別の場所から参照された場合に、そのチャネル テンプレートに対するクライアント側の既定のチャネル シンク呼び出しチェーンに挿入されるチャネル シンクのプロバイダを指定します。下のいずれかの位置でプロバイダを指定すると、対象のチャネルの既定のチャネル シンクがオーバーライドされます。テンプレートのチャネル シンク呼び出しチェーンに、これらの既定のチャネル シンクも挿入する必要がある場合は、それらの既定のチャネル シンクも同様にこの要素で指定する必要があります。

configuration

共通言語ランタイムおよび .NET Framework アプリケーションで使用されるすべての構成ファイルのルート要素です。

system.runtime.remoting

リモート オブジェクトおよびチャネルに関する情報を指定します。

次の構成ファイルは、<provider> インスタンス要素を使用して、<provider> テンプレート要素で宣言されている "propsetter" および "null" チャネル シンク プロバイダを HttpChannel に割り当てています。また、"propsetter" チャネル シンク プロバイダは、<provider> インスタンス要素の属性として、および子 <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.