次の方法で共有


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>

コールバック メソッド。

戻り値

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

注釈

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

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

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

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

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

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

適用対象