<provider> 要素 (テンプレート)
サーバーまたはクライアントのチャネル シンク チェインに挿入されるチャネル シンクのチャネル シンク プロバイダ テンプレートを指定します。階層内で、この要素を含めることができる位置は 2 つあります。
<configuration>
<system.runtime.remoting>
<channelSinkProviders>
<clientProviders>
<provider>
ここで指定されたプロバイダは、<provider> インスタンスによって参照して使用できます。
<configuration>
<system.runtime.remoting>
<channelSinkProviders>
<serverProviders>
<provider>
ここで指定されたプロバイダも、<provider> インスタンスによって参照して使用できます。
<provider
id="ProviderID" type="ProviderType, ProviderAssembly" customChannelSinkProperty="customProperty"/>
省略可能属性
属性 | 説明 |
---|---|
customChannelSinkProperty | サポートされているカスタム チャネル シンク プロパティを示します。カスタム チャネル シンク プロバイダとそのシンクがサポートする、プロバイダ プロパティおよびチャネル シンク プロパティをいくつでも指定できます。カスタム チャネル シンク プロパティは、属性と値のペアで指定します。次に例を示します。
ここには、カスタム シンク プロバイダのデータも指定できます。サポートされるノードのレベルは 1 つだけです。次に例を示します。
この追加情報は、プロバイダのコンストラクタで SinkProviderData の ICollection として使用できます。 |
必須属性
属性 | 説明 |
---|---|
id | 対象のチャネル シンク プロバイダを識別する文字列を指定します。他のプロバイダは、それぞれの ref 属性でこの文字列を指定することによって、このチャネル シンク プロバイダにバインドできます。 |
type | チャネル シンク プロバイダの完全型名と、プロバイダの実装が含まれているアセンブリの名前を指定します。格納しているアセンブリがグローバル アセンブリ キャッシュ内にある場合は、バージョン、カルチャ、および公開キーの情報が含まれます。 |
例
次の構成ファイルは、<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" password="xyz" />
<endpoint url="contoso.com:9001" password="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)