IInputChannel インターフェイス

定義

メッセージを受信するためにチャネルが実装する必要があるインターフェイスを定義します。

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
派生
実装

注釈

Important

信頼されていないデータを使用してこのインターフェイスを実装するクラスからメソッドを呼び出すことは、セキュリティ上のリスクです。 信頼されたデータでのみこのインターフェイスを実装するクラスからメソッドを呼び出します。 詳細については、「すべての入力を検証する」を参照してください。

IInputChannel コントラクトには、受信、受信試行、およびメッセージ待機機能の同期および非同期バリアントが含まれます。

プル モデルは通常、メッセージを受信する IInputChannel と共に使用されます。 Receive を呼び出し (チャネルからメッセージを "プル" するために) 呼び出し、メッセージが到着するまで待機します。 別の使用パターンとして、 BeginWaitForMessage(TimeSpan, AsyncCallback, Object) または BeginWaitForMessage(TimeSpan, AsyncCallback, Object)を呼び出してから、 Receive(TimeSpan)を呼び出します。 この方法は、 WaitForMessage(TimeSpan) 呼び出しと Receiveの間でトランザクションを開始するトランザクションの使用に一般的です。

IInputChannelは、必ずしも単一の送信者にバインドされるとは限りません。 他のチャネルとチャネル インターフェイスは、特定の送信者と IInputChannelの間に相関関係を提供できますが、基本コントラクトではそのような制限はありません。 実装では、メッセージごとに新しい IInputChannel を作成したり、複数のメッセージと送信者に同じ IInputChannel を再利用したりできます。

プロパティ

名前 説明
LocalAddress

入力チャネルがメッセージを受信するアドレスを取得します。

State

通信指向オブジェクトの現在の状態を取得します。

(継承元 ICommunicationObject)

メソッド

名前 説明
Abort()

通信オブジェクトを現在の状態から閉じた状態に直ちに遷移させます。

(継承元 ICommunicationObject)
BeginClose(AsyncCallback, Object)

通信オブジェクトを閉じる非同期操作を開始します。

(継承元 ICommunicationObject)
BeginClose(TimeSpan, AsyncCallback, Object)

指定したタイムアウトで通信オブジェクトを閉じる非同期操作を開始します。

(継承元 ICommunicationObject)
BeginOpen(AsyncCallback, Object)

通信オブジェクトを開く非同期操作を開始します。

(継承元 ICommunicationObject)
BeginOpen(TimeSpan, AsyncCallback, Object)

指定した時間内に通信オブジェクトを開く非同期操作を開始します。

(継承元 ICommunicationObject)
BeginReceive(AsyncCallback, Object)

状態オブジェクトが関連付けられているメッセージを受信する非同期操作を開始します。

BeginReceive(TimeSpan, AsyncCallback, Object)

指定したタイムアウトと状態オブジェクトが関連付けられているメッセージを受信する非同期操作を開始します。

BeginTryReceive(TimeSpan, AsyncCallback, Object)

指定したタイムアウトと状態オブジェクトが関連付けられているメッセージを受信する非同期操作を開始します。

BeginWaitForMessage(TimeSpan, AsyncCallback, Object)

指定したタイムアウトと状態オブジェクトが関連付けられた、メッセージから到着までの非同期待機操作を開始します。

Close()

通信オブジェクトを現在の状態から閉じた状態に遷移させます。

(継承元 ICommunicationObject)
Close(TimeSpan)

通信オブジェクトを現在の状態から閉じた状態に遷移させます。

(継承元 ICommunicationObject)
EndClose(IAsyncResult)

通信オブジェクトを閉じる非同期操作を完了します。

(継承元 ICommunicationObject)
EndOpen(IAsyncResult)

通信オブジェクトを開く非同期操作を完了します。

(継承元 ICommunicationObject)
EndReceive(IAsyncResult)

メッセージを受信する非同期操作を完了します。

EndTryReceive(IAsyncResult, Message)

指定した非同期操作を完了してメッセージを受信します。

EndWaitForMessage(IAsyncResult)

指定した非同期のメッセージ待機操作を完了します。

GetProperty<T>()

チャネル スタック内の適切なレイヤーから、要求された型指定されたオブジェクト (存在する場合) を返します。

(継承元 IChannel)
Open()

通信オブジェクトが作成された状態から開かれた状態に遷移します。

(継承元 ICommunicationObject)
Open(TimeSpan)

指定した時間内に、通信オブジェクトが作成された状態から開かれた状態に遷移します。

(継承元 ICommunicationObject)
Receive()

受信したメッセージ (使用可能な場合) を返します。 メッセージが使用できない場合は、既定の時間間隔でブロックします。

Receive(TimeSpan)

受信したメッセージ (使用可能な場合) を返します。 メッセージが使用できない場合は、指定した期間ブロックします。

TryReceive(TimeSpan, Message)

指定した時間内にメッセージの受信を試みます。

WaitForMessage(TimeSpan)

指定した時間内にメッセージが到着したかどうかを示す値を返します。

イベント

名前 説明
Closed

通信オブジェクトが終了状態から閉じた状態への遷移を完了したときに発生します。

(継承元 ICommunicationObject)
Closing

通信オブジェクトが最初に終了状態になったときに発生します。

(継承元 ICommunicationObject)
Faulted

通信オブジェクトが最初に障害状態になったときに発生します。

(継承元 ICommunicationObject)
Opened

通信オブジェクトが開始状態から開かれた状態への遷移を完了したときに発生します。

(継承元 ICommunicationObject)
Opening

通信オブジェクトが最初に開始状態になったときに発生します。

(継承元 ICommunicationObject)

適用対象