Partager via


Élément <channel> (modèle)

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 le modèle de canal qui peut être spécifié et configuré par l'application pour communiquer avec les demandes d'objets distants ou les écouter. À chaque endroit où un canal peut être inscrit en vue d'une utilisation, vous pouvez définir l'attribut id de l'élément d'instance de canal à l'attribut ref de ce modèle. Cet élément peut se trouver dans le fichier de configuration de l'ordinateur et dans le fichier de configuration de l'application.

Schema Hierarchy

<configuration>
  Élément <system.runtime.remoting>
    Élément <channels>, (modèle)
      Élément <channel> (modèle)

Syntaxe

<channel  
   id="channelID" 
   type="ChannelType, ChannelAssembly"
   displayName="displayName"
   customChannelProperty="customChannelValue"
   <!-- Available only to client configurations -->
   delayLoadAsClientChannel="true|false"
/>

Attributs et éléments

Les sections suivantes décrivent des attributs, des éléments enfants et des éléments parents.

Attributs

Attribut Description

customChannelProperty

Attribut facultatif.

Indique une propriété de canal personnalisé prise en charge. Vous pouvez spécifier autant de propriétés de canal que les canaux peuvent en accepter. Une propriété de canal personnalisé est spécifiée à l'aide d'une paire attribut/valeur. Par exemple :

<channel id="CustomChannel" type="Namespace.CustomChannel, CustomChannels" customProperty="PropertyValue"/>

delayLoadAsClientChannel

Attribut facultatif.

Indique si ce canal doit être chargé lorsque le client n'inscrit pas de canal pour l'application. Cette valeur est de type booléen et n'affecte que le comportement du client. La valeur true indique que .NET Framework Remoting doit tester le canal au moment de l'exécution pour vérifier s'il prend en charge une connexion cliente utilisant le schéma de protocole spécifié dans l'URL d'activation à distance. Si la valeur n'est pas spécifiée, la valeur par défaut est false.

displayName

Attribut facultatif.

Cet attribut est utilisé par l'outil .NET Framework Configuration pour créer la liste des canaux utilisés par cette application. Le système .NET Framework Remoting n'utilise pas cet attribut.

id

Attribut requis.

Fournit la chaîne utilisée par les applications pour identifier le canal lors de l'inscription. Pour référencer ce modèle de canal, assignez à cet attribut la valeur de l'attribut ref dans l'élément d'instance du canal.

Éléments enfants

Élément Description

<serverProviders>

Contient les fournisseurs de récepteurs pour les récepteurs qui doivent être insérés dans la chaîne d'appel du récepteur de canal côté serveur. Si un fournisseur est spécifié, il se substitue au fournisseur par défaut du canal. Peut apparaître une seule fois dans l'élément de modèle <channel>.

<clientProviders>

Contient les fournisseurs de récepteurs pour les récepteurs qui doivent être insérés dans la chaîne d'appel du récepteur de canal côté client. Si un fournisseur est spécifié, il se substitue au fournisseur par défaut du canal. Peut apparaître une seule fois dans l'élément de modèle <channel>.

Éléments parents

Élément Description

channels

Contient les modèles de canaux que l'application utilise pour communiquer avec les objets distants. Les canaux déclarés sous cet élément peuvent être référencés à tout endroit où un canal est inscrit.

configuration

Élément racine de chaque fichier de configuration utilisé par le common language runtime et les applications .NET Framework.

system.runtime.remoting

Spécifie l'élément racine de la section de configuration ASP.NET.

Notes

Les modèles de canaux peuvent figurer dans le fichier de configuration machine, dans le fichier de l'application ou dans tout autre fichier chargé en appelant RemotingConfiguration.Configure().

Exemple

Le fichier de configuration suivant utilise un élément de modèle <channels> pour déclarer un HttpChannel avec l'id « httpbinary ۛ» qui utilise le BinaryClientFormatterSink pour 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 ajoute un fournisseur de récepteur de canal « propsetter » et passe certains éléments de configuration personnalisés qui seront utilisés par le 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" someProperty="xyz" />
                     <endpoint url="contoso.com:9001" someProperty="123" />
                  </provider>
               </clientProviders>
            </channel>
         </channels>
         <client>
            <wellknown 
               url="http://computername:80/RemoteType.rem"
               type="RemoteType, RemoteAssembly"
            />
         </client>
      </application>
   </system.runtime.remoting>
</configuration>

Voir aussi

Référence

Schéma des paramètres de communication à distance
HttpChannel
HttpClientChannel
HttpServerChannel
TcpChannel
TcpClientChannel
TcpServerChannel

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