IRequestChannel.BeginRequest メソッド

定義

要求/応答メッセージ交換の応答側に要求メッセージを送信する非同期操作を開始します。

オーバーロード

BeginRequest(Message, AsyncCallback, Object)

要求/応答メッセージ交換の応答側に要求メッセージを送信する非同期操作を開始します。

BeginRequest(Message, TimeSpan, AsyncCallback, Object)

指定した時間内で要求/応答メッセージ交換の応答側に要求メッセージを送信する非同期操作を開始します。

BeginRequest(Message, AsyncCallback, Object)

ソース:
IRequestChannel.cs
ソース:
IRequestChannel.cs
ソース:
IRequestChannel.cs

要求/応答メッセージ交換の応答側に要求メッセージを送信する非同期操作を開始します。

public:
 IAsyncResult ^ BeginRequest(System::ServiceModel::Channels::Message ^ message, AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult BeginRequest (System.ServiceModel.Channels.Message message, AsyncCallback callback, object state);
abstract member BeginRequest : System.ServiceModel.Channels.Message * AsyncCallback * obj -> IAsyncResult
Public Function BeginRequest (message As Message, callback As AsyncCallback, state As Object) As IAsyncResult

パラメーター

message
Message

転送される要求 Message

callback
AsyncCallback

要求メッセージを転送する非同期操作の完了の通知を受信する AsyncCallback デリゲート。

state
Object

要求メッセージを転送する非同期操作に関連付けられている状態情報を格納するオブジェクト。アプリケーションで指定します。

戻り値

非同期メッセージ転送を参照する IAsyncResult

次のコードは、このメソッドを実装する方法を示しています。

public IAsyncResult BeginRequest(Message message,
    AsyncCallback callback, object state)
{
    return this.InnerChannel.BeginRequest(message,
        callback, state);
}

注釈

要求メッセージが、使用されるバインドで許可されている最大メッセージ サイズを超える場合は、QuotaExceededException がスローされます。 最大メッセージ サイズは、MaxReceivedMessageSize プロパティで設定されます。 既定値は 65536 バイトです。

適用対象

BeginRequest(Message, TimeSpan, AsyncCallback, Object)

ソース:
IRequestChannel.cs
ソース:
IRequestChannel.cs
ソース:
IRequestChannel.cs

指定した時間内で要求/応答メッセージ交換の応答側に要求メッセージを送信する非同期操作を開始します。

public:
 IAsyncResult ^ BeginRequest(System::ServiceModel::Channels::Message ^ message, TimeSpan timeout, AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult BeginRequest (System.ServiceModel.Channels.Message message, TimeSpan timeout, AsyncCallback callback, object state);
abstract member BeginRequest : System.ServiceModel.Channels.Message * TimeSpan * AsyncCallback * obj -> IAsyncResult
Public Function BeginRequest (message As Message, timeout As TimeSpan, callback As AsyncCallback, state As Object) As IAsyncResult

パラメーター

message
Message

転送される要求 Message

timeout
TimeSpan

応答受信の制限時間を指定する TimeSpan

callback
AsyncCallback

要求メッセージを転送する非同期操作の完了の通知を受信する AsyncCallback デリゲート。

state
Object

要求メッセージを転送する非同期操作に関連付けられている状態情報を格納するオブジェクト。アプリケーションで指定します。

戻り値

非同期メッセージ転送を参照する IAsyncResult

次のコードは、このメソッドを実装する方法を示しています。

public IAsyncResult BeginRequest(Message message,
    TimeSpan timeout, AsyncCallback callback,
    object state)
{
    return this.InnerChannel.BeginRequest(message,
        timeout, callback, state);
}

注釈

要求メッセージが、使用されるバインドで許可されている最大メッセージ サイズを超える場合は、QuotaExceededException がスローされます。 最大メッセージ サイズは、MaxReceivedMessageSize プロパティで設定されます。 既定値は 65536 バイトです。

関数の呼び出し時に timeout が渡された場合は、その値が使用されます。 バインドで SendTimeout が設定されている場合は、関数の呼び出し時に timeout が指定されないと、バインドでの値が使用されます。

バインドでも、関数の呼び出し時にも、タイムアウトが指定されていない場合は、DefaultSendTimeout が使用されます。 既定値は 1 分です。

注意 (実装者)

操作を完了する前に指定した TimeoutException が経過した場合、操作は timeout をスローする必要があります。

適用対象