Share via


IInputChannel Interfaccia

Definizione

Definisce l'interfaccia che un canale deve implementare per ricevere un messaggio.

public interface class IInputChannel : System::ServiceModel::Channels::IChannel
public interface IInputChannel : System.ServiceModel.Channels.IChannel
type IInputChannel = interface
    interface IChannel
    interface ICommunicationObject
Public Interface IInputChannel
Implements IChannel
Derivato
Implementazioni

Commenti

Importante

La chiamata a metodi da classi che implementano questa interfaccia con dati non attendibili costituisce un rischio per la sicurezza. Chiamare i metodi da classi che implementano questa interfaccia solo con dati attendibili. Per altre informazioni, vedere Convalidare tutti gli input.

Il contratto IInputChannel include varianti sincrone e asincrone della funzionalità di ricezione, tentativo di ricezione e attesa di un messaggio.

Il modello pull viene usato in genere con IInputChannel per ricevere messaggi: viene chiamato Receive (per "effettuare il pull" di un messaggio dal canale) e quindi si attende l'arrivo di un messaggio. Un modello di utilizzo alternativo consiste nel chiamare BeginWaitForMessage(TimeSpan, AsyncCallback, Object) o BeginWaitForMessage(TimeSpan, AsyncCallback, Object) e quindi Receive(TimeSpan). Questo approccio è comune per gli utilizzi transazionali in cui viene avviata la transazione tra le chiamate a WaitForMessage(TimeSpan) e Receive.

Un'interfaccia IInputChannel non è associata necessariamente a un solo mittente. Altri canali e interfacce di canale possono fornire una correlazione tra specifici mittenti e IInputChannel, ma il contratto di base non implica tale restrizione. Un'implementazione può creare un nuovo IInputChannel per ogni messaggio o può riutilizzare stesso IInputChannel per più messaggi e mittenti.

Proprietà

LocalAddress

Ottiene l'indirizzo sul quale il canale di input riceve i messaggi.

State

Ottiene lo stato corrente dell'oggetto orientato alla comunicazione.

(Ereditato da ICommunicationObject)

Metodi

Abort()

Comporta la transizione immediata di un oggetto di comunicazione dallo stato corrente allo stato di chiusura.

(Ereditato da ICommunicationObject)
BeginClose(AsyncCallback, Object)

Consente di iniziare un'operazione asincrona finalizzata a chiudere un oggetto di comunicazione.

(Ereditato da ICommunicationObject)
BeginClose(TimeSpan, AsyncCallback, Object)

Consente di iniziare un'operazione asincrona finalizzata a chiudere un oggetto di comunicazione entro un determinato intervallo di tempo.

(Ereditato da ICommunicationObject)
BeginOpen(AsyncCallback, Object)

Consente di iniziare un'operazione asincrona finalizzata ad aprire un oggetto di comunicazione.

(Ereditato da ICommunicationObject)
BeginOpen(TimeSpan, AsyncCallback, Object)

Consente di iniziare un'operazione asincrona finalizzata ad aprire un oggetto di comunicazione entro un determinato intervallo di tempo.

(Ereditato da ICommunicationObject)
BeginReceive(AsyncCallback, Object)

Inizia un'operazione asincrona per ricevere un messaggio al quale è associato un oggetto di stato.

BeginReceive(TimeSpan, AsyncCallback, Object)

Avvia un'operazione asincrona per ricevere un messaggio al quale sono associati un timeout e un oggetto di stato specificati.

BeginTryReceive(TimeSpan, AsyncCallback, Object)

Avvia un'operazione asincrona per ricevere un messaggio al quale sono associati un timeout e un oggetto di stato specificati.

BeginWaitForMessage(TimeSpan, AsyncCallback, Object)

Avvia un'operazione asincrona di attesa dell'arrivo di un messaggio al quale sono associati un timeout e un oggetto di stato specificati.

Close()

Comporta la transizione di un oggetto di comunicazione dallo stato corrente allo stato di chiusura.

(Ereditato da ICommunicationObject)
Close(TimeSpan)

Comporta la transizione di un oggetto di comunicazione dallo stato corrente allo stato di chiusura.

(Ereditato da ICommunicationObject)
EndClose(IAsyncResult)

Consente di completare un'operazione asincrona finalizzata a chiudere un oggetto di comunicazione.

(Ereditato da ICommunicationObject)
EndOpen(IAsyncResult)

Consente di completare un'operazione asincrona finalizzata ad aprire un oggetto di comunicazione.

(Ereditato da ICommunicationObject)
EndReceive(IAsyncResult)

Completa un'operazione asincrona per ricevere un messaggio.

EndTryReceive(IAsyncResult, Message)

Completa l'operazione asincrona specificata per ricevere un messaggio.

EndWaitForMessage(IAsyncResult)

Completa l'operazione asincrona specificata di attesa di un messaggio.

GetProperty<T>()

Se presente, restituisce un oggetto tipizzato richiesto dal livello appropriato nello stack dei canali.

(Ereditato da IChannel)
Open()

Comporta la transizione di un oggetto di comunicazione dallo stato di creazione allo stato di apertura.

(Ereditato da ICommunicationObject)
Open(TimeSpan)

Comporta la transizione di un oggetto di comunicazione dallo stato di creazione allo stato di apertura entro un determinato intervallo di tempo.

(Ereditato da ICommunicationObject)
Receive()

Se disponibile, restituisce il messaggio ricevuto. Se un messaggio non è disponibile, il thread si blocca per un intervallo di tempo predefinito.

Receive(TimeSpan)

Se disponibile, restituisce il messaggio ricevuto. Se un messaggio non è disponibile, il thread si blocca per l'intervallo di tempo specificato.

TryReceive(TimeSpan, Message)

Tenta di ricevere un messaggio entro l'intervallo di tempo specificato.

WaitForMessage(TimeSpan)

Restituisce un valore che indica se un messaggio è arrivato entro l'intervallo di tempo specificato.

Eventi

Closed

Si verifica quando l'oggetto di comunicazione completa la transizione dallo stato di pre-chiusura allo stato di chiusura.

(Ereditato da ICommunicationObject)
Closing

Si verifica quando l'oggetto di comunicazione passa per la prima volta allo stato di pre-chiusura.

(Ereditato da ICommunicationObject)
Faulted

Si verifica quando l'oggetto di comunicazione passa per la prima volta allo stato di errore.

(Ereditato da ICommunicationObject)
Opened

Si verifica quando l'oggetto di comunicazione completa la transizione dallo stato di pre-apertura allo stato di apertura.

(Ereditato da ICommunicationObject)
Opening

Si verifica quando l'oggetto di comunicazione passa per la prima volta allo stato di pre-apertura.

(Ereditato da ICommunicationObject)

Metodi di estensione

CloseHelperAsync(ICommunicationObject, TimeSpan)

Definisce l'interfaccia che un canale deve implementare per ricevere un messaggio.

OpenHelperAsync(ICommunicationObject, TimeSpan)

Definisce l'interfaccia che un canale deve implementare per ricevere un messaggio.

Si applica a