IInputChannel Interfaccia
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.
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) |