Share via


IInputChannel Rozhraní

Definice

Definuje rozhraní, které musí kanál implementovat pro příjem zprávy.

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
Odvozené
Implementuje

Poznámky

Důležité

Volání metod z tříd, které implementují toto rozhraní s nedůvěryhodnými daty, představuje bezpečnostní riziko. Volejte metody z tříd, které implementují toto rozhraní pouze s důvěryhodnými daty. Další informace najdete v tématu Ověření všech vstupů.

Kontrakt IInputChannel obsahuje synchronní a asynchronní varianty funkcí příjmu, try-to-receive a wait-for-a-message.

Model vyžádání se obvykle používá s objektem IInputChannel pro příjem zpráv: zavoláte Receive ("vytáhnete" zprávu z kanálu) a pak počkáte, až zpráva přijde. Alternativním vzorem použití je volání BeginWaitForMessage(TimeSpan, AsyncCallback, Object) nebo a BeginWaitForMessage(TimeSpan, AsyncCallback, Object)pak volání Receive(TimeSpan). Tento přístup je běžný u transakčních použití, kde zahájíte transakci mezi voláními WaitForMessage(TimeSpan) a Receive.

Není IInputChannel nutně vázán na jednoho odesílatele. Jiné kanály a rozhraní kanálů můžou poskytovat korelaci mezi konkrétními odesílateli a IInputChannel, ale základní kontrakt takové omezení nečiní. Implementace může vytvořit novou IInputChannel pro každou zprávu nebo znovu použít stejnou IInputChannel pro více zpráv a odesílatelů.

Vlastnosti

LocalAddress

Získá adresu, na které vstupní kanál přijímá zprávy.

State

Získá aktuální stav objektu orientovaného na komunikaci.

(Zděděno od ICommunicationObject)

Metody

Abort()

Způsobí okamžitý přechod komunikačního objektu z aktuálního stavu do uzavřeného stavu.

(Zděděno od ICommunicationObject)
BeginClose(AsyncCallback, Object)

Zahájí asynchronní operaci k zavření komunikačního objektu.

(Zděděno od ICommunicationObject)
BeginClose(TimeSpan, AsyncCallback, Object)

Zahájí asynchronní operaci uzavření komunikačního objektu se zadaným časovým limitem.

(Zděděno od ICommunicationObject)
BeginOpen(AsyncCallback, Object)

Zahájí asynchronní operaci k otevření komunikačního objektu.

(Zděděno od ICommunicationObject)
BeginOpen(TimeSpan, AsyncCallback, Object)

Zahájí asynchronní operaci, která otevře komunikační objekt v zadaném časovém intervalu.

(Zděděno od ICommunicationObject)
BeginReceive(AsyncCallback, Object)

Zahájí asynchronní operaci, která přijme zprávu, která má přidružený objekt stavu.

BeginReceive(TimeSpan, AsyncCallback, Object)

Zahájí asynchronní operaci, která přijme zprávu, která má přiřazený zadaný časový limit a objekt stavu.

BeginTryReceive(TimeSpan, AsyncCallback, Object)

Zahájí asynchronní operaci, která přijme zprávu, která má přiřazený zadaný časový limit a objekt stavu.

BeginWaitForMessage(TimeSpan, AsyncCallback, Object)

Spustí asynchronní operaci čekání na přijetí zprávy, která má přidružený zadaný časový limit a objekt stavu.

Close()

Způsobí přechod komunikačního objektu z aktuálního stavu do uzavřeného stavu.

(Zděděno od ICommunicationObject)
Close(TimeSpan)

Způsobí přechod komunikačního objektu z aktuálního stavu do uzavřeného stavu.

(Zděděno od ICommunicationObject)
EndClose(IAsyncResult)

Dokončí asynchronní operaci k zavření komunikačního objektu.

(Zděděno od ICommunicationObject)
EndOpen(IAsyncResult)

Dokončí asynchronní operaci k otevření komunikačního objektu.

(Zděděno od ICommunicationObject)
EndReceive(IAsyncResult)

Dokončí asynchronní operaci pro přijetí zprávy.

EndTryReceive(IAsyncResult, Message)

Dokončí zadanou asynchronní operaci pro přijetí zprávy.

EndWaitForMessage(IAsyncResult)

Dokončí zadanou asynchronní operaci čekání na zprávu.

GetProperty<T>()

Vrátí typovaný objekt požadovaný, pokud je k dispozici, z příslušné vrstvy v zásobníku kanálů.

(Zděděno od IChannel)
Open()

Způsobí přechod komunikačního objektu z vytvořeného stavu do otevřeného stavu.

(Zděděno od ICommunicationObject)
Open(TimeSpan)

Způsobí přechod komunikačního objektu z vytvořeného stavu do otevřeného stavu v zadaném časovém intervalu.

(Zděděno od ICommunicationObject)
Receive()

Vrátí přijatou zprávu, pokud je k dispozici. Pokud zpráva není k dispozici, zablokuje výchozí časový interval.

Receive(TimeSpan)

Vrátí přijatou zprávu, pokud je k dispozici. Pokud zpráva není k dispozici, zablokuje se v zadaném časovém intervalu.

TryReceive(TimeSpan, Message)

Pokusí se přijmout zprávu v zadaném časovém intervalu.

WaitForMessage(TimeSpan)

Vrátí hodnotu, která označuje, zda zpráva přišla v zadaném časovém intervalu.

Událost

Closed

Nastane, když komunikační objekt dokončí přechod z uzavírací do uzavřeného stavu.

(Zděděno od ICommunicationObject)
Closing

Nastane, když komunikační objekt poprvé přejde do uzavíracího stavu.

(Zděděno od ICommunicationObject)
Faulted

Nastane, když komunikační objekt poprvé přejde do chybného stavu.

(Zděděno od ICommunicationObject)
Opened

Nastane, když komunikační objekt dokončí svůj přechod ze stavu otevření do otevřeného stavu.

(Zděděno od ICommunicationObject)
Opening

Nastane, když komunikační objekt poprvé přejde do stavu otevření.

(Zděděno od ICommunicationObject)

Metody rozšíření

CloseHelperAsync(ICommunicationObject, TimeSpan)

Definuje rozhraní, které musí kanál implementovat pro příjem zprávy.

OpenHelperAsync(ICommunicationObject, TimeSpan)

Definuje rozhraní, které musí kanál implementovat pro příjem zprávy.

Platí pro