Elemento <channel> (modello)
Questo argomento è specifico di una tecnologia legacy mantenuta per una questione di compatibilità con le applicazioni esistenti di versioni precedenti e non è consigliato per il nuovo sviluppo. Le applicazioni distribuite devono ora essere sviluppate utilizzando Windows Communication Foundation (WCF).
Contiene il modello di canale che può essere specificato e configurato dall'applicazione per comunicare con oggetti remoti o per attendere richieste per tali oggetti. In tutte le posizioni in cui un canale può essere registrato per l'uso, è possibile impostare l'attributo id dell'elemento del canale dell'istanza in questione sull'attributo ref del modello. Questo elemento può essere presente in un file di configurazione del computer e in un file di configurazione dell'applicazione.
Schema Hierarchy
<configuration>
Elemento <system.runtime.remoting>
Elemento <channels> (modello)
Elemento <channel> (modello)
Sintassi
<channel
id="channelID"
type="ChannelType, ChannelAssembly"
displayName="displayName"
customChannelProperty="customChannelValue"
<!-- Available only to client configurations -->
delayLoadAsClientChannel="true|false"
/>
Attributi ed elementi
Nelle sezioni seguenti vengono descritti gli attributi, gli elementi figlio e gli elementi padre.
Attributi
Attributo | Descrizione |
---|---|
customChannelProperty |
Attributo facoltativo. Indica una proprietà di canale personalizzata e supportata. È possibile specificare un numero qualsiasi di proprietà di canale in grado di essere supportate dai canali. Una proprietà personalizzata di canale verrà specificata con una coppia attributo/valore. Ad esempio:
|
delayLoadAsClientChannel |
Attributo facoltativo. Indica se il canale deve essere caricato quando il client non registra un canale per l'applicazione. Si tratta di un valore booleano e influisce solo sul comportamento del client. Il valore true indica che nel sistema di gestione remota .NET Framework deve essere eseguito il test del canale in fase di esecuzione per verificare se è supportata una connessione client che utilizza lo schema di protocollo particolare specificato nell'URL di attivazione remota. L'impostazione predefinita false viene utilizzata se il valore non è presente. |
displayName |
Attributo facoltativo. Viene utilizzato dallo strumento .NET Framework Configuration per la creazione di un elenco di canali utilizzati dall'applicazione. Nel sistema di gestione remota .NET Framework questo attributo non viene utilizzato. |
id |
Attributo obbligatorio. Fornisce la stringa utilizzata dall'applicazione per identificare il canale in fase di registrazione. Per fare riferimento al modello di canale, specificare questo attributo come valore dell'attributo ref nell'elemento del canale dell'istanza. |
Elementi figlio
Elemento | Descrizione |
---|---|
Contiene i provider di sink per i sink da inserire nella catena di chiamate di sink di canale sul lato server. Se specificato, viene eseguito l'override completo delle impostazioni predefinite del canale. Può essere presente una sola volta nell'elemento modello <channel>. |
|
Contiene i provider di sink per i sink da inserire nella catena di chiamate di sink di canale sul lato client. Se specificato, viene eseguito l'override completo delle impostazioni predefinite del canale. Può essere presente una sola volta nell'elemento modello <channel>. |
Elementi padre
Elemento | Descrizione |
---|---|
channels |
Contiene i modelli di canale utilizzati dall'applicazione per comunicare con oggetti remoti. È possibile fare riferimento ai canali dichiarati sotto questo elemento da qualsiasi posizione in cui è registrato un canale. |
configuration |
È l'elemento radice in ciascun file di configurazione utilizzato in Common Language Runtime e nelle applicazioni .NET Framework. |
system.runtime.remoting |
Consente di specificare l'elemento radice per la sezione di configurazione ASP.NET. |
Osservazioni
I modelli canali di canale possono essere contenuti nel file di configurazione del computer, nel file dell'applicazione o in qualsiasi altro file caricato chiamando RemotingConfiguration.Configure().
Esempio
Nel file di configurazione seguente viene utilizzato un elemento modello <channels> per dichiarare un canale HttpChannel con ID "httpbinary" che utilizza il sink BinaryClientFormatterSink per la serializzazione delle chiamate remote. Viene quindi richiesto che l'applicazione client utilizzi tale particolare configurazione di canale specificando ref="httpbinary"
nell'elemento di istanza <channel> all'interno dell'elemento <application>. Viene infine aggiunto un provider di sink di canale "propsetter" e vengono passati alcuni elementi di configurazione personalizzati utilizzabili dal provider di sink di canale in questione. Si noti che per utilizzare l'attributo type per specificare un tipo in un assembly nella Global Assembly Cache è necessario fornire informazioni complete sui tipi, incluse la versione, le impostazioni cultura e la chiave pubblica. Nell'esempio relativo agli attributi type riportato di seguito, tali informazioni non sono state incluse per sintesi.
<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>
Vedere anche
Riferimento
Schema delle impostazioni remote
HttpChannel
HttpClientChannel
HttpServerChannel
TcpChannel
TcpClientChannel
TcpServerChannel
Data di compilazione: 2010-02-13