<clientProviders> Elemento (Instancia)
Contiene los proveedores de receptores de canal que van a formar parte de la cadena de llamadas de receptores de canal predeterminada del cliente correspondiente a esta plantilla de canal cuando se hace referencia a la plantilla en otro lugar del archivo de configuración. Al especificar proveedores en cualquiera de las posiciones que figuran más abajo, se reemplazan los receptores de canal predeterminados correspondientes a este canal; si desea que cualquiera de estos receptores de canal predeterminados queden insertados en la cadena de llamadas de receptores de canal correspondiente a esta plantilla, deberá especificarlos aquí.
<clientProviders>
En este caso, los proveedores invalidan a los proveedores predeterminados de este canal en todos los lugares donde se haga referencia a esta plantilla de canal.
<clientProviders>
En este caso, los proveedores invalidan a los proveedores predeterminados sólo para esta instancia de canal.
<clientProviders>
<formatter/>
<provider/>
</clientProviders>
Elementos secundarios
Elemento | Descripción |
---|---|
Contiene un receptor de formateador que se va a insertar en la cadena de llamadas de receptores de canal. Puede producirse una sola vez en el elemento de instancia <clientProviders>. |
|
Contiene un receptor de canal que se va a insertar en la cadena de llamadas de receptores de canal. Puede producirse una o varias veces en el elemento de instancia <clientProviders>. |
Comentarios
Cuando se utilizan en un elemento de plantilla de canal, todos los proveedores declarados, o a los que se haga referencia en el nivel mostrado, invalidarán a los proveedores predeterminados del canal y se convertirán en los proveedores predeterminados si se hace referencia al canal en otro lugar del archivo de configuración. Es importante darse cuenta de que se invalidarán todos los proveedores o formateadores predeterminados de este canal cuando se utilice este elemento. Si desea que dichos proveedores o formateadores formen parte de esta plantilla de canal además de cualquier proveedor personalizado, deberá especificar todos los proveedores y el formateador que se han de usar con este canal cuando otros hagan referencia a él.
Cuando se utilizan en una instancia de canal, todos los proveedores declarados o a los que se haga referencia en el nivel mostrado invalidarán a los proveedores predeterminados del canal sólo para esta instancia de canal. Si esta instancia hace referencia a una plantilla que declara clientProviders, entonces los proveedores aquí indicados también los invalidarán por completo.
Ejemplo
En el siguiente archivo de configuración se utiliza un elemento de plantilla <channels> para declarar un HttpChannel con el identificador "httpbinary" y se utiliza un elemento de plantilla <clientProviders> con el fin de especificar BinaryClientFormatterSink para serializar las llamadas remotas. A continuación, se solicita que esta aplicación utilice concretamente esa configuración de canal especificando ref="httpbinary"
en el elemento de instancia <channel> dentro del elemento <application>. Finalmente, se utiliza un elemento de instancia <clientProviders> para agregar un proveedor de receptores de canal "propsetter" y se pasan algunos elementos de configuración personalizados que utilizará dicho proveedor de receptores de canal. Observe que el uso del atributo type para especificar un tipo en un ensamblado que se encuentra en la caché de ensamblados global requiere información completa sobre el tipo, incluida la información sobre la versión, referencia cultural y clave pública. Para mayor brevedad, dicha información se ha omitido en los atributos type que aparecen a continuación.
<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>
Requisitos
Archivos de configuración: Archivo de configuración de la aplicación, archivo de configuración del equipo (Machine.config)
Consulte también
Referencia
Esquema de configuración de la comunicación remota
Conceptos
Receptores y cadenas de receptores
Copyright © 2007 Microsoft Corporation. Reservados todos los derechos.