다음을 통해 공유


IRequestChannel.BeginRequest 메서드

정의

요청-회신 메시지 교환의 회신측에 요청 메시지를 전송하는 비동기 작업을 시작합니다.

오버로드

BeginRequest(Message, AsyncCallback, Object)

요청-회신 메시지 교환의 회신측에 요청 메시지를 전송하는 비동기 작업을 시작합니다.

BeginRequest(Message, TimeSpan, AsyncCallback, Object)

지정된 시간 간격 이내에 요청-회신 메시지 교환의 응답측에 요청 메시지를 전송하는 비동기 작업을 시작합니다.

BeginRequest(Message, AsyncCallback, Object)

요청-회신 메시지 교환의 회신측에 요청 메시지를 전송하는 비동기 작업을 시작합니다.

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

비동기 메시지 전송을 참조하는 IAsyncResult입니다.

예제

다음 코드에서는 이 메서드를 구현하는 방법을 보여줍니다.

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

설명

요청 메시지가 사용되는 바인딩에서 허용하는 최대 메시지 크기보다 크면 throw QuotaExceededException 됩니다. 최대 메시지 크기는 MaxReceivedMessageSize 속성에서 설정됩니다. 기본값은 65536바이트입니다.

적용 대상

BeginRequest(Message, TimeSpan, AsyncCallback, Object)

지정된 시간 간격 이내에 요청-회신 메시지 교환의 응답측에 요청 메시지를 전송하는 비동기 작업을 시작합니다.

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

비동기 메시지 전송을 참조하는 IAsyncResult입니다.

예제

다음 코드에서는 이 메서드를 구현하는 방법을 보여줍니다.

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

설명

요청 메시지가 사용되는 바인딩에서 허용되는 최대 메시지 크기보다 큰 경우 throw QuotaExceededException 되어야 합니다. 최대 메시지 크기는 MaxReceivedMessageSize 속성에서 설정됩니다. 기본값은 65536바이트입니다.

함수를 timeout 호출하는 동안 a가 전달되면 해당 값이 사용됩니다. 바인딩에 SendTimeout 설정된 경우 함수를 호출하는 동안 지정되지 않은 timeout 경우 바인딩의 값이 사용됩니다.

바인딩 DefaultSendTimeout 또는 함수를 호출하는 동안 시간 제한이 지정되지 않은 경우 사용됩니다. 이 기본값은 1분입니다.

구현자 참고

작업을 완료하기 전에 지정된 TimeoutException이 초과된 경우 작업에서 timeout을 throw해야 합니다.

적용 대상