IRequestChannel.Request Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Wysyła żądanie oparte na komunikatach i zwraca skorelowane odpowiedzi oparte na komunikatach.
Przeciążenia
Request(Message) |
Wysyła żądanie oparte na komunikatach i zwraca skorelowane odpowiedzi oparte na komunikatach. |
Request(Message, TimeSpan) |
Wysyła żądanie oparte na komunikatach i zwraca skorelowane odpowiedzi oparte na komunikatach w określonym interwale czasu. |
Request(Message)
- Źródło:
- IRequestChannel.cs
- Źródło:
- IRequestChannel.cs
- Źródło:
- IRequestChannel.cs
Wysyła żądanie oparte na komunikatach i zwraca skorelowane odpowiedzi oparte na komunikatach.
public:
System::ServiceModel::Channels::Message ^ Request(System::ServiceModel::Channels::Message ^ message);
public System.ServiceModel.Channels.Message Request (System.ServiceModel.Channels.Message message);
abstract member Request : System.ServiceModel.Channels.Message -> System.ServiceModel.Channels.Message
Public Function Request (message As Message) As Message
Parametry
Zwraca
Odebrany Message w odpowiedzi na żądanie.
Przykłady
Poniższy kod pokazuje, jak zaimplementować tę metodę:
public Message Request(Message message)
{
return this.InnerChannel.Request(message);
}
Uwagi
Implementacje IRequestChannel zapewnienia, że komunikat odpowiedzi jest skorelowany z komunikatem żądania.
Ogólnie rzecz biorąc, jeśli implementacja komunikatu IRequestChannel nie jest skorelowana z zaległym żądaniem, zostanie porzucona.
Metoda Request może być wywoływana współbieżnie w wielu wątkach.
Przekazanie komunikatu do kanału żądania powoduje uzyskanie dostępu do komunikatu. Po wywołaniu metody Requestnie można już sprawdzić wiadomości ani wywołać Close tej wiadomości.
Jeśli komunikat żądania jest większy, że maksymalny rozmiar komunikatu dozwolony przez używane powiązanie jest QuotaExceededException zgłaszany. Maksymalny rozmiar komunikatu MaxReceivedMessageSize jest ustawiany przez właściwość . Wartość domyślna to 65536 bajtów.
Dotyczy
Request(Message, TimeSpan)
- Źródło:
- IRequestChannel.cs
- Źródło:
- IRequestChannel.cs
- Źródło:
- IRequestChannel.cs
Wysyła żądanie oparte na komunikatach i zwraca skorelowane odpowiedzi oparte na komunikatach w określonym interwale czasu.
public:
System::ServiceModel::Channels::Message ^ Request(System::ServiceModel::Channels::Message ^ message, TimeSpan timeout);
public System.ServiceModel.Channels.Message Request (System.ServiceModel.Channels.Message message, TimeSpan timeout);
abstract member Request : System.ServiceModel.Channels.Message * TimeSpan -> System.ServiceModel.Channels.Message
Public Function Request (message As Message, timeout As TimeSpan) As Message
Parametry
Zwraca
Odebrany Message w odpowiedzi na żądanie.
Przykłady
Poniższy kod pokazuje, jak zaimplementować tę metodę.
public Message Request(Message message, TimeSpan timeout)
{
return this.InnerChannel.Request(message, timeout);
}
Uwagi
Implementacje IRequestChannel zapewnienia, że komunikat odpowiedzi jest skorelowany z komunikatem żądania.
Ogólnie rzecz biorąc, jeśli implementacja komunikatu IRequestChannel nie jest skorelowana z zaległym żądaniem, zostanie porzucona.
Metoda Request może być wywoływana współbieżnie w wielu wątkach.
Przekazanie komunikatu do kanału żądania powoduje uzyskanie dostępu do komunikatu. Po wywołaniu metody Requestnie można już sprawdzić wiadomości ani wywołać Close tej wiadomości.
Jeśli komunikat żądania jest większy, że maksymalny rozmiar komunikatu dozwolony przez używane powiązanie jest QuotaExceededException zgłaszany. Maksymalny rozmiar komunikatu MaxReceivedMessageSize jest ustawiany przez właściwość . Wartość domyślna to 65536 bajtów.
Jeśli element timeout
jest przekazywany podczas wywoływania funkcji, zostanie użyta ta wartość. Jeśli element SendTimeout jest ustawiony na powiązanie, wartość powiązania jest używana, jeśli nie timeout
jest 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łaszać wartość TimeoutException , jeśli określona timeout
wartość zostanie przekroczona przed ukończeniem operacji.