HttpResponseBase.AddOnSendingHeaders(Action<HttpContextBase>) Метод

Определение

Регистрирует обратный вызов, который среда выполнения ASP.NET будет вызываться непосредственно перед отправкой заголовков ответа для этого запроса.

public:
 virtual System::Web::ISubscriptionToken ^ AddOnSendingHeaders(Action<System::Web::HttpContextBase ^> ^ callback);
public virtual System.Web.ISubscriptionToken AddOnSendingHeaders(Action<System.Web.HttpContextBase> callback);
abstract member AddOnSendingHeaders : Action<System.Web.HttpContextBase> -> System.Web.ISubscriptionToken
override this.AddOnSendingHeaders : Action<System.Web.HttpContextBase> -> System.Web.ISubscriptionToken
Public Overridable Function AddOnSendingHeaders (callback As Action(Of HttpContextBase)) As ISubscriptionToken

Параметры

callback
Action<HttpContextBase>

Метод обратного вызова.

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

ISubscriptionToken Возвращает объект, представляющий подписку на псевдо-событие OnSendingHeaders.

Комментарии

Псевдо-событие OnSendingHeaders отличается от события конвейера уровня IHttpModule, что это подписка на запрос, а не подписка на каждое приложение. Цель заключается в том, что обратный вызов может изменить код состояния ответа или задать файл cookie ответа или заголовок ответа. Другие заметки об использовании и предостережения:

  • Этот метод действует только в том случае, если службы IIS выполняются в конвейере встроенного режима конвейера и только если заголовки ответа еще не отправлены для текущего запроса.

  • Среда выполнения ASP.NET не гарантирует ничего о потоке, в который вызывается обратный вызов. Например, обратный вызов может вызываться синхронно в фоновом потоке, если выполняется фоновая очистка. Current не гарантируется доступность в таком потоке.

  • Обратный вызов не должен вызывать любой метод, который управляет телом сущности ответа или приводит к очистке. Например, обратный вызов не должен вызываться Redirect, так как этот метод может управлять телом сущности ответа.

  • Обратный вызов должен содержать только короткий синхронный код. Попытка вызвать асинхронную операцию или ждать такой операции может привести к взаимоблокировке.

  • Обратный вызов не должен вызывать исключение; в противном случае поведение не определено.

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