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