IRequestChannel.Request Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Отправляет запрос на основе сообщений и возвращает коррелированные ответы на основе сообщений.
Перегрузки
| Имя | Описание |
|---|---|
| Request(Message) |
Отправляет запрос на основе сообщений и возвращает коррелированные ответы на основе сообщений. |
| Request(Message, TimeSpan) |
Отправляет запрос на основе сообщений и возвращает коррелированные ответы на основе сообщений в течение указанного интервала времени. |
Request(Message)
- Исходный код:
- IRequestChannel.cs
- Исходный код:
- IRequestChannel.cs
- Исходный код:
- IRequestChannel.cs
Отправляет запрос на основе сообщений и возвращает коррелированные ответы на основе сообщений.
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
Параметры
Возвращаемое значение
Полученное Message в ответ на запрос.
Примеры
В следующем коде показано, как реализовать этот метод:
public Message Request(Message message)
{
return this.InnerChannel.Request(message);
}
Комментарии
Реализации обеспечения корреляции IRequestChannel сообщения ответа с сообщением запроса.
Как правило, если реализация IRequestChannel получает сообщение, которое не коррелирует с невыполненным запросом, он удаляется.
Метод Request можно вызывать одновременно в нескольких потоках.
Передача сообщения в канал запроса приводит к доступу к сообщению. После вызова Requestвы больше не сможете проверить сообщение или вызвать Close сообщение.
Если сообщение запроса больше, что максимальный размер сообщения, разрешенный используемой привязкой, QuotaExceededException вызывается. Максимальный размер сообщения задается свойством MaxReceivedMessageSize . Значение по умолчанию — 65536 байт.
Применяется к
Request(Message, TimeSpan)
- Исходный код:
- IRequestChannel.cs
- Исходный код:
- IRequestChannel.cs
- Исходный код:
- IRequestChannel.cs
Отправляет запрос на основе сообщений и возвращает коррелированные ответы на основе сообщений в течение указанного интервала времени.
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
Параметры
Возвращаемое значение
Полученное Message в ответ на запрос.
Примеры
В следующем коде показано, как реализовать этот метод.
public Message Request(Message message, TimeSpan timeout)
{
return this.InnerChannel.Request(message, timeout);
}
Комментарии
Реализации обеспечения корреляции IRequestChannel сообщения ответа с сообщением запроса.
Как правило, если реализация IRequestChannel получает сообщение, которое не коррелирует с невыполненным запросом, он удаляется.
Метод Request можно вызывать одновременно в нескольких потоках.
Передача сообщения в канал запроса приводит к доступу к сообщению. После вызова Requestвы больше не сможете проверить сообщение или вызвать Close сообщение.
Если сообщение запроса больше, что максимальный размер сообщения, разрешенный используемой привязкой, QuotaExceededException вызывается. Максимальный размер сообщения задается свойством MaxReceivedMessageSize . Значение по умолчанию — 65536 байт.
Если функция timeout передается при вызове функции, используется это значение.
SendTimeout Если задано в привязке, то значение привязки используется, если при вызове функции нетtimeout.
Используется, DefaultSendTimeout если время ожидания не указано в привязке или при вызове функции. Это значение по умолчанию составляет 1 минуту.
Примечания для тех, кто реализует этот метод
Операция должна вызывать TimeoutException исключение, если указанное timeout превышено до завершения операции.