Поделиться через


IReplyChannel.ReceiveRequest Метод

Определение

Возвращает контекст полученного запроса, если таковой доступен.

Перегрузки

ReceiveRequest()

Возвращает контекст полученного запроса, если таковой доступен. Если контекст недоступен, ожидает появления доступного контекста.

ReceiveRequest(TimeSpan)

Возвращает контекст полученного запроса, если таковой доступен. Если контекст недоступен, ожидает появления доступного контекста.

ReceiveRequest()

Исходный код:
IReplyChannel.cs
Исходный код:
IReplyChannel.cs

Возвращает контекст полученного запроса, если таковой доступен. Если контекст недоступен, ожидает появления доступного контекста.

public:
 System::ServiceModel::Channels::RequestContext ^ ReceiveRequest();
public System.ServiceModel.Channels.RequestContext ReceiveRequest ();
abstract member ReceiveRequest : unit -> System.ServiceModel.Channels.RequestContext
Public Function ReceiveRequest () As RequestContext

Возвращаемое значение

Объект RequestContext, использованный для создания ответов.

Примеры

В следующем примере кода показано, как реализовать этот метод.

public RequestContext ReceiveRequest()
{
    return ReceiveRequest(DefaultReceiveTimeout);
}

Комментарии

Объект RequestContext инкапсулирует сообщение запроса и механизм для ответа на это сообщение.

Метод ReceiveRequest может быть вызван несколько раз или одновременно. На один полученный запрос завершается только один вызов метода ReceiveRequest.

Если размер полученного сообщения запроса превышает максимальный размер сообщения, допускаемый используемой привязкой, создается исключение QuotaExceededException. Максимальный размер сообщения задается свойством MaxReceivedMessageSize. Значение по умолчанию — 65 536 байт.

Применяется к

ReceiveRequest(TimeSpan)

Исходный код:
IReplyChannel.cs
Исходный код:
IReplyChannel.cs

Возвращает контекст полученного запроса, если таковой доступен. Если контекст недоступен, ожидает появления доступного контекста.

public:
 System::ServiceModel::Channels::RequestContext ^ ReceiveRequest(TimeSpan timeout);
public System.ServiceModel.Channels.RequestContext ReceiveRequest (TimeSpan timeout);
abstract member ReceiveRequest : TimeSpan -> System.ServiceModel.Channels.RequestContext
Public Function ReceiveRequest (timeout As TimeSpan) As RequestContext

Параметры

timeout
TimeSpan

Объект TimeSpan, указывающий, за какое время должно завершиться получение операции запроса, прежде чем истечет время ожидания и будет возвращено значение false.

Возвращаемое значение

Объект RequestContext, использованный для создания ответов.

Примеры

В следующем примере кода показано, как реализовать этот метод.

public RequestContext ReceiveRequest(TimeSpan timeout)
{
    RequestContext requestContext;
    while (true)
    {
        requestContext = this.InnerChannel.ReceiveRequest(timeout);
        if (ProcessRequestContext(ref requestContext))
        {
            break;
        }
    }

    return requestContext;
}

Комментарии

Объект RequestContext инкапсулирует сообщение запроса и механизм для ответа на это сообщение.

Метод ReceiveRequest может быть вызван несколько раз или одновременно. На один полученный запрос завершается только один вызов метода ReceiveRequest.

Если размер полученного сообщения запроса превышает максимальный размер сообщения, допускаемый используемой привязкой, создается исключение QuotaExceededException. Максимальный размер сообщения задается свойством MaxReceivedMessageSize. Значение по умолчанию — 65 536 байт.

Применяется к