WebChannelFactory<TChannel> Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Classe per l'accesso ai servizi Web Windows Communication Foundation (WCF) in un client.
generic <typename TChannel>
where TChannel : classpublic ref class WebChannelFactory : System::ServiceModel::ChannelFactory<TChannel>
public class WebChannelFactory<TChannel> : System.ServiceModel.ChannelFactory<TChannel> where TChannel : class
type WebChannelFactory<'Channel (requires 'Channel : null)> = class
inherit ChannelFactory<'Channel (requires 'Channel : null)>
Public Class WebChannelFactory(Of TChannel)
Inherits ChannelFactory(Of TChannel)
Parametri di tipo
- TChannel
Tipo di canale da creare.
- Ereditarietà
Esempio
Nel codice seguente viene illustrato come usare la WebChannelFactory<TChannel> classe per chiamare un servizio WCF.
Uri baseAddress = new Uri("http://localhost:8000");
WebServiceHost host = new WebServiceHost(typeof(Service), baseAddress);
try
{
host.Open();
WebChannelFactory<IService> cf = new WebChannelFactory<IService>(baseAddress);
IService channel = cf.CreateChannel();
string s;
Console.WriteLine("Calling EchoWithGet via HTTP GET: ");
s = channel.EchoWithGet("Hello, world");
Console.WriteLine(" Output: {0}", s);
Console.WriteLine("");
Console.WriteLine("Calling EchoWithPost via HTTP POST: ");
s = channel.EchoWithPost("Hello, world");
Console.WriteLine(" Output: {0}", s);
Console.WriteLine("");
}
catch (CommunicationException ex)
{
Console.WriteLine("An exception occurred: " + ex.Message);
}
Dim baseAddress As New Uri("http://localhost:8000")
Dim host As New WebServiceHost(GetType(Service), baseAddress)
Try
host.Open()
Dim cf As New WebChannelFactory(Of IService)(baseAddress)
Dim channel As IService = cf.CreateChannel()
Dim s As String
Console.WriteLine("Calling EchoWithGet via HTTP GET: ")
s = channel.EchoWithGet("Hello, world")
Console.WriteLine(" Output: 0}", s)
Console.WriteLine("")
Console.WriteLine("Calling EchoWithPost via HTTP POST: ")
s = channel.EchoWithPost("Hello, world")
Console.WriteLine(" Output: 0}", s)
Console.WriteLine("")
Catch ex As CommunicationException
Console.WriteLine("An exception occurred: " + ex.Message)
End Try
Per un esempio di codice completo, vedere Esempio di modello di programmazione REST WCF di base.
Commenti
Questa classe è uno speciale ChannelFactory che aggiunge automaticamente l'oggetto WebHttpBehavior all'endpoint, se non è già presente. Aggiunge inoltre un valore predefinito all'endpoint se l'associazione non è configurata WebHttpBinding in modo esplicito e l'indirizzo è un indirizzo HTTP o HTTPS.
Se tutte le operazioni del contratto non hanno alcun valore restituito o hanno un valore restituito di tipo Stream, l'oggetto WebChannelFactory<TChannel> configura l'associazione per il tipo di contenuto appropriato.
Costruttori
Proprietà
| Nome | Descrizione |
|---|---|
| Credentials |
Ottiene le credenziali usate dai client per comunicare un endpoint di servizio sui canali prodotti dalla factory. (Ereditato da ChannelFactory) |
| DefaultCloseTimeout |
Ottiene l'intervallo di tempo predefinito specificato per il completamento di un'operazione di chiusura. (Ereditato da ChannelFactory) |
| DefaultOpenTimeout |
Ottiene l'intervallo di tempo predefinito specificato per il completamento di un'operazione aperta. (Ereditato da ChannelFactory) |
| Endpoint |
Ottiene l'endpoint di servizio a cui si connettono i canali prodotti dalla factory. (Ereditato da ChannelFactory) |
| IsDisposed |
Ottiene un valore che indica se l'oggetto di comunicazione è stato eliminato. (Ereditato da CommunicationObject) |
| State |
Ottiene un valore che indica lo stato corrente dell'oggetto di comunicazione. (Ereditato da CommunicationObject) |
| ThisLock |
Ottiene il blocco che protegge l'istanza della classe durante una transizione di stato. (Ereditato da CommunicationObject) |
Metodi
| Nome | Descrizione |
|---|---|
| Abort() |
Fa sì che un oggetto di comunicazione passi immediatamente dallo stato corrente allo stato di chiusura. (Ereditato da CommunicationObject) |
| ApplyConfiguration(String) |
Inizializza la channel factory con i comportamenti forniti da un file di configurazione specificato e con quelli nell'endpoint di servizio della channel factory. (Ereditato da ChannelFactory) |
| BeginClose(AsyncCallback, Object) |
Avvia un'operazione asincrona per chiudere un oggetto di comunicazione. (Ereditato da CommunicationObject) |
| BeginClose(TimeSpan, AsyncCallback, Object) |
Avvia un'operazione asincrona per chiudere un oggetto di comunicazione con un timeout specificato. (Ereditato da CommunicationObject) |
| BeginOpen(AsyncCallback, Object) |
Avvia un'operazione asincrona per aprire un oggetto di comunicazione. (Ereditato da CommunicationObject) |
| BeginOpen(TimeSpan, AsyncCallback, Object) |
Avvia un'operazione asincrona per aprire un oggetto di comunicazione entro un intervallo di tempo specificato. (Ereditato da CommunicationObject) |
| Close() |
Fa sì che un oggetto di comunicazione passi dallo stato corrente allo stato chiuso. (Ereditato da CommunicationObject) |
| Close(TimeSpan) |
Fa sì che un oggetto di comunicazione passi dallo stato corrente allo stato chiuso entro un intervallo di tempo specificato. (Ereditato da CommunicationObject) |
| CreateChannel() |
Crea un canale di un tipo specificato in un indirizzo endpoint specificato. (Ereditato da ChannelFactory<TChannel>) |
| CreateChannel(EndpointAddress, Uri) |
Crea un canale utilizzato per inviare messaggi a un servizio in un indirizzo endpoint specifico tramite un indirizzo di trasporto specificato. (Ereditato da ChannelFactory<TChannel>) |
| CreateChannel(EndpointAddress) |
Crea un canale utilizzato per inviare messaggi a un servizio in un indirizzo endpoint specifico. (Ereditato da ChannelFactory<TChannel>) |
| CreateChannelWithActAsToken(SecurityToken, EndpointAddress, Uri) |
Crea un canale utilizzato per inviare messaggi a un servizio con un token di sicurezza in un indirizzo endpoint specifico tramite un indirizzo di trasporto specificato. (Ereditato da ChannelFactory<TChannel>) |
| CreateChannelWithActAsToken(SecurityToken, EndpointAddress) |
Crea un canale usato per inviare messaggi a un servizio con un token di sicurezza in un indirizzo endpoint specifico. (Ereditato da ChannelFactory<TChannel>) |
| CreateChannelWithActAsToken(SecurityToken) |
Crea un canale utilizzato per inviare messaggi a un servizio con un token di sicurezza. (Ereditato da ChannelFactory<TChannel>) |
| CreateChannelWithIssuedToken(SecurityToken, EndpointAddress, Uri) |
Crea un canale utilizzato per inviare messaggi a un servizio con un token di sicurezza rilasciato in un indirizzo endpoint specifico tramite un indirizzo di trasporto specificato. (Ereditato da ChannelFactory<TChannel>) |
| CreateChannelWithIssuedToken(SecurityToken, EndpointAddress) |
Crea un canale utilizzato per inviare messaggi a un servizio con un token di sicurezza rilasciato in un indirizzo endpoint specifico. (Ereditato da ChannelFactory<TChannel>) |
| CreateChannelWithIssuedToken(SecurityToken) |
Crea un canale utilizzato per inviare messaggi a un servizio con un token di sicurezza emesso. (Ereditato da ChannelFactory<TChannel>) |
| CreateChannelWithOnBehalfOfToken(SecurityToken, EndpointAddress, Uri) |
Crea un canale utilizzato per inviare messaggi a un servizio con un token di sicurezza per conto di un indirizzo endpoint specifico tramite un indirizzo di trasporto specificato. (Ereditato da ChannelFactory<TChannel>) |
| CreateChannelWithOnBehalfOfToken(SecurityToken, EndpointAddress) |
Crea un canale utilizzato per inviare messaggi a un servizio con un token di sicurezza per conto di un indirizzo endpoint specifico. (Ereditato da ChannelFactory<TChannel>) |
| CreateChannelWithOnBehalfOfToken(SecurityToken) |
Crea un canale utilizzato per inviare messaggi a un servizio con un token di sicurezza per conto di . (Ereditato da ChannelFactory<TChannel>) |
| CreateDescription() |
Crea una descrizione dell'endpoint del servizio. (Ereditato da ChannelFactory<TChannel>) |
| CreateFactory() |
Compila la channel factory per l'endpoint corrente della factory. (Ereditato da ChannelFactory) |
| EndClose(IAsyncResult) |
Completa un'operazione asincrona per chiudere un oggetto di comunicazione. (Ereditato da CommunicationObject) |
| EndOpen(IAsyncResult) |
Completa un'operazione asincrona per aprire un oggetto di comunicazione. (Ereditato da CommunicationObject) |
| EnsureOpened() |
Apre la channel factory corrente se non è ancora aperta. (Ereditato da ChannelFactory) |
| Equals(Object) |
Determina se l'oggetto specificato è uguale all'oggetto corrente. (Ereditato da Object) |
| Fault() |
Fa sì che un oggetto di comunicazione passi dallo stato corrente allo stato di errore. (Ereditato da CommunicationObject) |
| GetCommunicationObjectType() |
Ottiene il tipo di oggetto di comunicazione. (Ereditato da CommunicationObject) |
| GetHashCode() |
Funge da funzione hash predefinita. (Ereditato da Object) |
| GetProperty<T>() |
Restituisce l'oggetto tipizzato richiesto, se presente, dal livello appropriato nello stack di canali o |
| GetType() |
Ottiene il Type dell'istanza corrente. (Ereditato da Object) |
| InitializeEndpoint(Binding, EndpointAddress) |
Inizializza l'endpoint di servizio della channel factory con un'associazione e un indirizzo specificati. (Ereditato da ChannelFactory) |
| InitializeEndpoint(ServiceEndpoint) |
Inizializza l'endpoint di servizio della channel factory con un endpoint specificato. (Ereditato da ChannelFactory) |
| InitializeEndpoint(String, EndpointAddress) |
Inizializza l'endpoint di servizio della channel factory con un indirizzo e una configurazione specificati. (Ereditato da ChannelFactory) |
| MemberwiseClone() |
Crea una copia superficiale del Objectcorrente. (Ereditato da Object) |
| OnAbort() |
Termina la channel factory interna della channel factory corrente. (Ereditato da ChannelFactory) |
| OnBeginClose(TimeSpan, AsyncCallback, Object) |
Avvia un'operazione di chiusura asincrona nella channel factory interna della channel factory corrente a cui è associato un oggetto stato. (Ereditato da ChannelFactory) |
| OnBeginOpen(TimeSpan, AsyncCallback, Object) |
Avvia un'operazione di apertura asincrona nella channel factory interna della channel factory corrente a cui è associato un oggetto stato. (Ereditato da ChannelFactory) |
| OnClose(TimeSpan) |
Chiama close sulla channel factory interna con un timeout specificato per il completamento dell'operazione. (Ereditato da ChannelFactory) |
| OnClosed() |
Richiamato durante la transizione di un oggetto di comunicazione nello stato di chiusura. (Ereditato da CommunicationObject) |
| OnClosing() |
Richiamato durante la transizione di un oggetto di comunicazione nello stato di chiusura. (Ereditato da CommunicationObject) |
| OnEndClose(IAsyncResult) |
Completa un'operazione di chiusura asincrona nella channel factory interna della channel factory corrente. (Ereditato da ChannelFactory) |
| OnEndOpen(IAsyncResult) |
Completa un'operazione di apertura asincrona nella channel factory interna della channel factory corrente. (Ereditato da ChannelFactory) |
| OnFaulted() |
Inserisce l'elaborazione in un oggetto di comunicazione dopo la transizione allo stato di errore a causa della chiamata di un'operazione di errore sincrono. (Ereditato da CommunicationObject) |
| OnOpen(TimeSpan) |
Chiama aperto nella channel factory interna della channel factory corrente con un timeout specificato per il completamento dell'operazione. (Ereditato da ChannelFactory) |
| OnOpened() |
Inizializza una copia di sola lettura dell'oggetto ClientCredentials per la channel factory. (Ereditato da ChannelFactory) |
| OnOpening() |
Questo metodo viene chiamato all'apertura dell'oggetto WebChannelFactory<TChannel> . |
| Open() |
Fa sì che un oggetto di comunicazione passi dallo stato creato allo stato aperto. (Ereditato da CommunicationObject) |
| Open(TimeSpan) |
Fa sì che un oggetto di comunicazione passi dallo stato creato allo stato aperto entro un intervallo di tempo specificato. (Ereditato da CommunicationObject) |
| ThrowIfDisposed() |
Genera un'eccezione se l'oggetto di comunicazione viene eliminato. (Ereditato da CommunicationObject) |
| ThrowIfDisposedOrImmutable() |
Genera un'eccezione se l'oggetto di comunicazione la State proprietà non è impostata sullo Created stato . (Ereditato da CommunicationObject) |
| ThrowIfDisposedOrNotOpen() |
Genera un'eccezione se l'oggetto di comunicazione non è nello Opened stato . (Ereditato da CommunicationObject) |
| ToString() |
Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object) |
Eventi
| Nome | Descrizione |
|---|---|
| Closed |
Si verifica quando un oggetto di comunicazione passa allo stato chiuso. (Ereditato da CommunicationObject) |
| Closing |
Si verifica quando un oggetto di comunicazione passa allo stato di chiusura. (Ereditato da CommunicationObject) |
| Faulted |
Si verifica quando un oggetto di comunicazione passa allo stato di errore. (Ereditato da CommunicationObject) |
| Opened |
Si verifica quando un oggetto di comunicazione passa allo stato aperto. (Ereditato da CommunicationObject) |
| Opening |
Si verifica quando un oggetto di comunicazione passa allo stato di apertura. (Ereditato da CommunicationObject) |
Implementazioni dell'interfaccia esplicita
| Nome | Descrizione |
|---|---|
| IDisposable.Dispose() |
Chiude la channel factory corrente. (Ereditato da ChannelFactory) |