Udostępnij za pośrednictwem


IRequestChannel.BeginRequest Metoda

Definicja

Rozpoczyna operację asynchroniczną w celu przesłania wiadomości żądania do strony odpowiedzi w ramach wymiany wiadomości z odpowiedzią na żądanie.

Przeciążenia

BeginRequest(Message, AsyncCallback, Object)

Rozpoczyna operację asynchroniczną w celu przesłania wiadomości żądania do strony odpowiedzi w ramach wymiany wiadomości z odpowiedzią na żądanie.

BeginRequest(Message, TimeSpan, AsyncCallback, Object)

Rozpoczyna operację asynchroniczną w celu przesłania wiadomości żądania do strony odpowiedzi w ramach wymiany komunikatów odpowiedzi na żądanie w określonym przedziale czasu.

BeginRequest(Message, AsyncCallback, Object)

Rozpoczyna operację asynchroniczną w celu przesłania wiadomości żądania do strony odpowiedzi w ramach wymiany wiadomości z odpowiedzią na żądanie.

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

Parametry

message
Message

Żądanie Message do przesłania.

callback
AsyncCallback

Delegat AsyncCallback , który odbiera powiadomienie o zakończeniu operacji asynchronicznej przesyłającej komunikat żądania.

state
Object

Obiekt określony przez aplikację, który zawiera informacje o stanie skojarzone z operacją asynchroniczną przesyłającą komunikat żądania.

Zwraca

IAsyncResult

Element IAsyncResult odwołujący się do asynchronicznej transmisji komunikatów.

Przykłady

Poniższy kod pokazuje, jak zaimplementować tę metodę.

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

Uwagi

Jeśli komunikat żądania jest większy niż maksymalny rozmiar komunikatu dozwolony przez używane powiązanie, QuotaExceededException jest zgłaszany. Maksymalny rozmiar komunikatu MaxReceivedMessageSize jest ustawiany przez właściwość . Wartość domyślna to 65536 bajtów.

Dotyczy

BeginRequest(Message, TimeSpan, AsyncCallback, Object)

Rozpoczyna operację asynchroniczną w celu przesłania wiadomości żądania do strony odpowiedzi w ramach wymiany komunikatów odpowiedzi na żądanie w określonym przedziale czasu.

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

Parametry

message
Message

Żądanie Message do przesłania.

timeout
TimeSpan

Określa TimeSpan interwał czasu, w którym musi zostać odebrana odpowiedź.

callback
AsyncCallback

Delegat AsyncCallback , który odbiera powiadomienie o zakończeniu operacji asynchronicznej przesyłającej komunikat żądania.

state
Object

Obiekt określony przez aplikację, który zawiera informacje o stanie skojarzone z operacją asynchroniczną przesyłającą komunikat żądania.

Zwraca

IAsyncResult

Element IAsyncResult odwołujący się do asynchronicznej transmisji komunikatów.

Przykłady

Poniższy kod pokazuje, jak zaimplementować tę metodę:

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

Uwagi

Jeśli komunikat żądania jest większy niż maksymalny rozmiar komunikatu dozwolony przez używane powiązanie, QuotaExceededException powinien zostać zgłoszony element . Maksymalny rozmiar komunikatu MaxReceivedMessageSize jest ustawiany przez właściwość . Wartość domyślna to 65536 bajtów.

timeout Jeśli element jest przekazywany podczas wywoływania funkcji, zostanie użyta ta wartość. SendTimeout Jeśli właściwość jest ustawiona na powiązaniu, zostanie użyta wartość powiązania, jeśli nie timeout zostanie określona podczas wywoływania funkcji.

Parametr DefaultSendTimeout jest używany, jeśli nie określono limitu czasu dla powiązania lub podczas wywoływania funkcji. Ta wartość domyślna to 1 minuta.

Uwagi dotyczące implementowania

Operacja powinna zgłosić TimeoutException wartość , jeśli określona timeout wartość zostanie przekroczona przed ukończeniem operacji.

Dotyczy