IInputChannel Rozhraní

Definice

Definuje rozhraní, které musí kanál implementovat, aby přijímal zprávu.

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. Volání metod 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í změn se obvykle používá s objektem pro IInputChannel příjem zpráv: zavoláte Receive (abyste zprávu vytáhli z kanálu) a potom počkáte, až zpráva dorazí. Alternativním vzorem použití je volání BeginWaitForMessage(TimeSpan, AsyncCallback, Object) nebo BeginWaitForMessage(TimeSpan, AsyncCallback, Object)a následné volání Receive(TimeSpan)metody . Tento přístup je běžný u transakčních použití, kdy zahájíte transakci mezi voláními a WaitForMessage(TimeSpan)Receive.

Není IInputChannel nutně vázán na jednoho odesílatele. Jiné kanály a rozhraní kanálů mohou poskytovat korelaci mezi konkrétními odesílateli a IInputChannel, ale základní kontrakt takové omezení neposkytuje. Implementace může vytvořit novou IInputChannel zprávu 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í, že komunikační objekt okamžitě přejde 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 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)

Začne asynchronní operaci přijmout zprávu, která má zadaný časový limit a stav objektu přidruženého k němu.

BeginTryReceive(TimeSpan, AsyncCallback, Object)

Začne asynchronní operaci přijmout zprávu, která má zadaný časový limit a stav objektu přidruženého k němu.

BeginWaitForMessage(TimeSpan, AsyncCallback, Object)

Zahájí asynchronní čekání na doručení 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 pro zavření komunikačního objektu.

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

Dokončí asynchronní operaci pro 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 a přijme zprávu.

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 ze stavu vytvoření 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, jestli zpráva přišla v zadaném časovém intervalu.

Událost

Closed

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

(Zděděno od ICommunicationObject)
Closing

Vyvolá se při prvním vstupu komunikačního objektu do uzavíracího stavu.

(Zděděno od ICommunicationObject)
Faulted

Vyvolá se při prvním vstupu komunikačního objektu do stavu selhání.

(Zděděno od ICommunicationObject)
Opened

Vyvolá se, když komunikační objekt dokončí přechod ze stavu otevření do otevřeného stavu.

(Zděděno od ICommunicationObject)
Opening

Vyvolá se při prvním vstupu komunikačního objektu do stavu otevření.

(Zděděno od ICommunicationObject)

Metody rozšíření

CloseHelperAsync(ICommunicationObject, TimeSpan)

Definuje rozhraní, které musí kanál implementovat, aby přijímal zprávu.

OpenHelperAsync(ICommunicationObject, TimeSpan)

Definuje rozhraní, které musí kanál implementovat, aby přijímal zprávu.

Platí pro