Share via


HttpCacheValidateHandler デリゲート

キャッシュ アイテムをキャッシュから供給される前に検証するために呼び出されるメソッドを表します。

名前空間: System.Web
アセンブリ: System.Web (system.web.dll 内)

構文

'宣言
Public Delegate Sub HttpCacheValidateHandler ( _
    context As HttpContext, _
    data As Object, _
    ByRef validationStatus As HttpValidationStatus _
)
'使用
Dim instance As New HttpCacheValidateHandler(AddressOf HandlerMethod)
public delegate void HttpCacheValidateHandler (
    HttpContext context,
    Object data,
    ref HttpValidationStatus validationStatus
)
public delegate void HttpCacheValidateHandler (
    HttpContext^ context, 
    Object^ data, 
    HttpValidationStatus% validationStatus
)
/** @delegate */
public delegate void HttpCacheValidateHandler (
    HttpContext context, 
    Object data, 
    /** @ref */ HttpValidationStatus validationStatus
)
適用できません。

パラメータ

  • context
    現在の要求に関する情報を保持している HttpContext オブジェクト。
  • data
    キャッシュされている項目を検証するために使用するユーザー指定のデータ。
  • validationStatus
    HttpValidationStatus 列挙値。検証の結果を示すには、デリゲートがこの値を設定する必要があります。

解説

HttpCacheValidateHandler メソッドのスコープ内の無効なキャッシュ アイテムはキャッシュから削除され、そのアイテムの要求はキャッシュに情報がなかったものとして処理されます。

トピック 場所
方法 : キャッシュされたページの有効性をチェックする Visual Studio ASP .NET での Web アプリケーションの作成
方法 : キャッシュされたページの有効性をチェックする Visual Studio ASP .NET での Web アプリケーションの作成
方法 : キャッシュされたページの有効性をチェックする ASP .NET Web アプリケーションの作成

使用例

新しいキャッシュ検証デリゲートをアプリケーションに追加する方法を次のコード例に示します。

Private Sub Page_Load(sender As Object, e As EventArgs)
   Response.Cache.AddValidationCallback(New HttpCacheValidateHandler(AddressOf CacheValidate1), Nothing)
End Sub
   
Public Sub CacheValidate1(context As HttpContext, data As Object, ByRef status As HttpValidationStatus)
   If context.Request.QueryString("Valid") = "false" Then
      status = HttpValidationStatus.Invalid
   Else
      status = HttpValidationStatus.Valid
   End If
End Sub
    
private void Page_Load(Object sender, EventArgs e)
{
   Response.Cache.AddValidationCallback(new HttpCacheValidateHandler(CacheValidate1), null);
}

public void CacheValidate1(HttpContext context, Object data, ref HttpValidationStatus status) 
{
   if (context.Request.QueryString["Valid"] == "false") 
   {
      status = HttpValidationStatus.Invalid;
   }
   else 
   {
      status = HttpValidationStatus.Valid;
   }
}
    
    private void Page_Load(Object sender, EventArgs e)
    {
        get_Response().get_Cache().AddValidationCallback(
            new HttpCacheValidateHandler(CacheValidate1), null);
    } //Page_Load

    public void CacheValidate1(HttpContext context, Object data,
        /**@ref*/HttpValidationStatus status)
    {
        if (context.get_Request().get_QueryString().get_Item("Valid").
            Equals("false")) {
            status = HttpValidationStatus.Invalid;
        }
        else {
            status = HttpValidationStatus.Valid;
        }
    } //CacheValidate1
} //Page1 

プラットフォーム

Windows 98,Windows Server 2000 SP4,Windows CE,Windows Millennium Edition,Windows Mobile for Pocket PC,Windows Mobile for Smartphone,Windows Server 2003,Windows XP Media Center Edition,Windows XP Professional x64 Edition,Windows XP SP2,Windows XP Starter Edition

Microsoft .NET Framework 3.0 は Windows Vista,Microsoft Windows XP SP2,および Windows Server 2003 SP1 でサポートされています。

バージョン情報

.NET Framework

サポート対象 : 3.0,2.0,1.1,1.0

参照

関連項目

System.Web 名前空間
HttpCachePolicy