次の方法で共有


HttpResponse.AddOnSendingHeaders(Action<HttpContext>) メソッド

定義

この要求に対応する応答ヘッダーを送信する直前に、ASP.NET ランタイムが呼び出すコールバックを登録します。

public:
 System::Web::ISubscriptionToken ^ AddOnSendingHeaders(Action<System::Web::HttpContext ^> ^ callback);
public System.Web.ISubscriptionToken AddOnSendingHeaders (Action<System.Web.HttpContext> callback);
member this.AddOnSendingHeaders : Action<System.Web.HttpContext> -> System.Web.ISubscriptionToken
Public Function AddOnSendingHeaders (callback As Action(Of HttpContext)) As ISubscriptionToken

パラメーター

callback
Action<HttpContext>

コールバック メソッド。

戻り値

OnSendingHeaders 疑似イベントへのサブスクリプションを表す ISubscriptionToken オブジェクト。

注釈

重要

ネイティブ モジュールが最初に応答をフラッシュした場合、AddOnSendingHeaders メソッドは呼び出されません。

擬似イベント OnSendingHeaders は、アプリケーションごとのサブスクリプションではなく要求ごとのサブスクリプションであるという点で、IHttpModule レベルのパイプライン イベントとは異なります。 意図は、コールバックが応答状態コードを変更するか、応答 Cookie またはヘッダーを設定する可能性があるということです。 その他の使用上の注意事項:

  • このメソッドは、IIS が統合パイプライン モード パイプラインで実行されている場合、および現在の要求に対して応答ヘッダーがまだ送信されていない場合にのみ有効です。

  • ASP.NET ランタイムは、コールバックが呼び出されるスレッドについて何も保証しません。 たとえば、バックグラウンド フラッシュが実行されている場合は、バックグラウンド スレッドでコールバックを同期的に呼び出すことができます。 Current は、このようなスレッドで使用できる保証はありません。

  • コールバックは、応答エンティティ本体を操作するメソッド、またはフラッシュを行うメソッドを呼び出してはなりません。 たとえば、コールバックは、応答エンティティ本体を操作する可能性があるため、 を呼び出 Redirectしてはなりません。

  • コールバックには、実行時間の短い同期コードのみが含まれている必要があります。 非同期操作を呼び出そうとするか、そのような操作を待機しようとすると、デッドロックが発生する可能性があります。

  • コールバックは例外をスローしてはなりません。それ以外の場合、動作は未定義です。

適用対象