Élément <clientProviders> (instance)

Cette rubrique est spécifique à la technologie héritée assurant la compatibilité descendante avec des applications existantes et n'est pas recommandée en cas de nouveau développement. Les applications distribuées doivent maintenant être développées à l'aide de Windows Communication Foundation (WCF)

Contient les fournisseurs des récepteurs de canaux qui doivent faire partie de la chaîne d'appel du récepteur de canal par défaut côté client pour ce modèle de canal lorsqu'il est fait référence au modèle à un autre endroit du fichier de configuration. Les fournisseurs spécifiés dans l'un ou l'autre des emplacements ci-dessous se substituent aux récepteurs de canaux par défaut du canal ; si vous prévoyez que l'un de ces récepteurs de canaux sera inséré dans la chaîne d'appel du récepteur de canal de ce modèle, vous devez le spécifier à cet emplacement.

<configuration>

<system.runtime.remoting>

<channels>

<channel>

< clientProviders>

Les fournisseurs spécifiés à cet emplacement se substituent aux fournisseurs par défaut du canal à tout endroit où il est fait référence à ce modèle de canal.

<configuration>

<system.runtime.remoting>

<application>

<channels>

<channel>

< clientProviders>

Les fournisseurs spécifiés à cet emplacement se substituent aux fournisseurs par défaut uniquement pour cette instance de canal.

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

Éléments enfants

Élément Description

<formatter>

Contient le récepteur de formateur à insérer dans la chaîne d'appel du récepteur de canal. Peut apparaître une seule fois dans l'élément d'instance <clientProviders>.

<provider>

Contient le récepteur de canal à insérer dans la chaîne d'appel du récepteur de canal. Peut apparaître une ou plusieurs fois dans l'élément d'instance <clientProviders>.

Notes

Lorsqu'il est utilisé dans un élément de modèle de canal, tout fournisseur référencé ou déclaré au niveau indiqué se substitue au fournisseur par défaut du canal et devient le fournisseur par défaut s'il est fait référence au canal à un autre endroit du fichier de configuration. Il est important de bien comprendre que les formateurs ou fournisseurs par défaut de ce canal sont remplacés lorsque cet élément est utilisé. Si vous souhaitez que ces fournisseurs ou formateurs fassent partie du modèle de canal en plus des fournisseurs personnalisés, vous devez spécifier tous les fournisseurs et le formateur à utiliser avec ce canal lorsque d'autres y font référence.

Lorsqu'il est utilisé dans une instance de canal, tout fournisseur référencé ou déclaré au niveau indiqué se substitue au fournisseur par défaut du canal uniquement pour cette instance de canal. Si cette instance fait référence à un modèle qui déclare clientProviders, alors les fournisseurs indiqués à cet emplacement se substituent à eux également.

Exemple

Le fichier de configuration suivant utilise un élément de modèle <channels> pour déclarer HttpChannel avec l'id « httpbinary » et utilise l'élément de modèle <clientProviders> pour indiquer à BinaryClientFormatterSink de sérialiser les appels distants. Il demande ensuite que l'application cliente utilise cette configuration de canal spécifique en définissant ref="httpbinary" dans l'élément d'instance <channel> à l'intérieur de l'élément <application>. Enfin, il utilise un élément d'instance <clientProviders> pour ajouter un fournisseur de récepteur de canal « propsetter » et passe certains éléments de configuration personnalisés qui seront utilisés par ce fournisseur de récepteur de canal. Notez que toute utilisation de l'attribut type pour spécifier un type dans un assembly qui se trouve dans le Global Assembly Cache nécessite des informations de type complètes, y compris les informations de version, de culture et de clé publique. Ces informations ont été omises dans les attributs type suivants pour des raisons de concision.

<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>

Spécifications

Fichiers de configuration : fichier de configuration de l'application, fichier de configuration machine (Machine.config)

Voir aussi

Référence

Schéma des paramètres de communication à distance

Concepts

Récepteurs et chaînes de récepteurs

Date de génération : 2010-02-13