RequestContext Класс
В этой статье
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Предоставляет ответ, связанный с входящим запросом.
public ref class RequestContext abstract : IDisposable
public abstract class RequestContext : IDisposable
type RequestContext = class
interface IDisposable
Public MustInherit Class RequestContext
Implements IDisposable
- Наследование
-
RequestContext
- Реализации
Контекст запроса возвращается из объекта IReplyChannel. Каждый объект RequestContext инкапсулирует сведения, необходимые для ответа на запрос, чтобы не приходилось блокировать канал, ожидая ответы на все сообщения с запросами.
В модели RequestContext "запрос-ответ" объект является связью между поступающим запросом и ответом, который выходит. Когда сервер получает запрос, он предоставляет RequestContext экземпляр , представляющий запрос к каналу. Контекст запроса содержит, помимо других полезных свойств, первоначальное сообщение с запросом. Этот контекст запроса затем помещается в объект OperationContext, который получает служба. Для доступа к запросу текущей операции обычно используется свойство Current.
RequestContext может иметь значение null
. Так как задача контекста запроса — связывать запросы с ответами, нет смысла получать контекст запроса в отсутствие ответа, поэтому в этом случае контексту присваивается значение null
. При односторонних операциях в модели запрос-ответ сервер получает запросы, но не отправляет клиенту ответ. Поэтому если объект RequestContext неожиданно приобрел значение null
, сначала нужно проверить, не задан ли для операции контракт IsOneWay.
Особое примечание для пользователей управляемого кода C++, создающих классы, унаследованные от данного.
Поместите код очистки в блок (On)(Begin)Close (или OnAbort), а не в деструктор.
Избегайте использования деструкторов, поскольку они приводят к тому, что компилятор автоматически создает IDisposable.
Избегайте использования нессылочных членов, поскольку они приводят к тому, что компилятор автоматически создает IDisposable.
Избегайте использования методов завершения. При включении этого метода необходимо подавить предупреждение построения и вызвать SuppressFinalize(Object) и сам метод завершения из блока (On)(Begin)Close (или OnAbort) для эмуляции автоматического поведения IDisposable.
Request |
Инициализирует новый экземпляр класса RequestContext. |
Request |
При переопределении в производном классе возвращает сообщение, содержащее запрос. |
Abort() |
При переопределении в производном классе отменяет обработку запроса, связанного с контекстом. |
Begin |
При переопределении в производном классе начинает асинхронную операцию ответа на запрос, связанный с текущим контекстом. |
Begin |
При переопределении в производном классе начинает асинхронную операцию ответа на запрос, связанный с текущим контекстом, в течение определенного периода времени. |
Close() |
При переопределении в производном классе прекращает операцию ответа на контекст запроса, связанный с текущим контекстом. |
Close(Time |
При переопределении в производном классе прекращает операцию ответа на контекст запроса, связанный с текущим контекстом в течение определенного периода времени. |
Dispose(Boolean) |
Освобождает ресурсы, связанные с контекстом. |
End |
При переопределении в производном классе завершает асинхронную операцию ответа на сообщение запроса. |
Equals(Object) |
Определяет, равен ли указанный объект текущему объекту. (Унаследовано от Object) |
Get |
Служит хэш-функцией по умолчанию. (Унаследовано от Object) |
Get |
Возвращает объект Type для текущего экземпляра. (Унаследовано от Object) |
Memberwise |
Создает неполную копию текущего объекта Object. (Унаследовано от Object) |
Reply(Message) |
При переопределении в производном классе отвечает на сообщение запроса. |
Reply(Message, Time |
При переопределении в производном классе отвечает на сообщение запроса в течение заданного промежутка времени. |
To |
Возвращает строку, представляющую текущий объект. (Унаследовано от Object) |
IDisposable. |
Освобождает управляемые и неуправляемые ресурсы, связанные с контекстом. |
Продукт | Версии |
---|---|
.NET | Core 1.0, Core 1.1, 8 |
.NET Framework | 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1 |
UWP | 10.0 |