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 di metodi da classi che implementano questa interfaccia con dati non attendibili è un rischio per la sicurezza. Chiamare i metodi dalle classi che implementano questa interfaccia solo con dati attendibili. Per altre informazioni, vedere Convalidare tutti gli input.

Il IInputChannel contratto include varianti sincrone e asincrone di ricezione, try-to-receive e wait-for-a-message.

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

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

Proprietà

Nome Descrizione
LocalAddress

Ottiene l'indirizzo in cui il canale di input riceve messaggi.

State

Ottiene lo stato corrente dell'oggetto orientato alla comunicazione.

(Ereditato da ICommunicationObject)

Metodi

Nome Descrizione
Abort()

Fa sì che un oggetto di comunicazione passi immediatamente dallo stato corrente allo stato chiuso.

(Ereditato da ICommunicationObject)
BeginClose(AsyncCallback, Object)

Avvia un'operazione asincrona per chiudere un oggetto di comunicazione.

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

Avvia un'operazione asincrona per chiudere un oggetto di comunicazione con un timeout specificato.

(Ereditato da ICommunicationObject)
BeginOpen(AsyncCallback, Object)

Avvia un'operazione asincrona per aprire un oggetto di comunicazione.

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

Avvia un'operazione asincrona per aprire un oggetto di comunicazione entro un intervallo di tempo specificato.

(Ereditato da ICommunicationObject)
BeginReceive(AsyncCallback, Object)

Avvia un'operazione asincrona per ricevere un messaggio a cui è associato un oggetto stato.

BeginReceive(TimeSpan, AsyncCallback, Object)

Avvia un'operazione asincrona per ricevere un messaggio con un timeout specificato e un oggetto di stato associato.

BeginTryReceive(TimeSpan, AsyncCallback, Object)

Avvia un'operazione asincrona per ricevere un messaggio con un timeout specificato e un oggetto di stato associato.

BeginWaitForMessage(TimeSpan, AsyncCallback, Object)

Avvia un'operazione di attesa asincrona per l'arrivo di un messaggio con un timeout specificato e un oggetto di stato associato.

Close()

Fa sì che un oggetto di comunicazione passi dallo stato corrente allo stato chiuso.

(Ereditato da ICommunicationObject)
Close(TimeSpan)

Fa sì che un oggetto di comunicazione passi dallo stato corrente allo stato chiuso.

(Ereditato da ICommunicationObject)
EndClose(IAsyncResult)

Completa un'operazione asincrona per chiudere un oggetto di comunicazione.

(Ereditato da ICommunicationObject)
EndOpen(IAsyncResult)

Completa un'operazione asincrona per 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 di attesa asincrona specificata per un messaggio.

GetProperty<T>()

Restituisce un oggetto tipizzato richiesto, se presente, dal livello appropriato nello stack di canali.

(Ereditato da IChannel)
Open()

Fa sì che un oggetto di comunicazione passi dallo stato creato allo stato aperto.

(Ereditato da ICommunicationObject)
Open(TimeSpan)

Fa sì che un oggetto di comunicazione passi dallo stato creato allo stato aperto entro un intervallo di tempo specificato.

(Ereditato da ICommunicationObject)
Receive()

Restituisce il messaggio ricevuto, se disponibile. Se un messaggio non è disponibile, blocca per un intervallo di tempo predefinito.

Receive(TimeSpan)

Restituisce il messaggio ricevuto, se disponibile. Se un messaggio non è disponibile, blocca per un intervallo di tempo specificato.

TryReceive(TimeSpan, Message)

Prova a ricevere un messaggio entro un intervallo di tempo specificato.

WaitForMessage(TimeSpan)

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

Eventi

Nome Descrizione
Closed

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

(Ereditato da ICommunicationObject)
Closing

Si verifica quando l'oggetto di comunicazione entra per la prima volta nello stato di chiusura.

(Ereditato da ICommunicationObject)
Faulted

Si verifica quando l'oggetto di comunicazione entra per la prima volta nello stato di errore.

(Ereditato da ICommunicationObject)
Opened

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

(Ereditato da ICommunicationObject)
Opening

Si verifica quando l'oggetto di comunicazione entra per la prima volta nello stato di apertura.

(Ereditato da ICommunicationObject)

Si applica a