HttpCacheValidateHandler HttpCacheValidateHandler HttpCacheValidateHandler HttpCacheValidateHandler Delegate

Определение

Представляет метод, который вызывается для проверки кэшированного элемента до того, как элемент будет передан из кэша.Represents a method that is called to validate a cached item before the item is served from the cache.

public delegate void HttpCacheValidateHandler(HttpContext ^ context, System::Object ^ data, HttpValidationStatus % validationStatus);
public delegate void HttpCacheValidateHandler(HttpContext context, object data, ref HttpValidationStatus validationStatus);
type HttpCacheValidateHandler = delegate of HttpContext * obj * HttpValidationStatus -> unit
Public Delegate Sub HttpCacheValidateHandler(context As HttpContext, data As Object, ByRef validationStatus As HttpValidationStatus)

Параметры

context
HttpContext HttpContext HttpContext HttpContext

Объект HttpContext, содержащий сведения о текущем запросе.The HttpContext object containing information about the current request.

data
Object Object Object Object

Предоставленные пользователем данные, используемые для проверки кэшированного элемента.User-supplied data used to validate the cached item.

validationStatus
HttpValidationStatus HttpValidationStatus HttpValidationStatus HttpValidationStatus

Значение перечисления HttpValidationStatus.An HttpValidationStatus enumeration value. Делегат задает это значение для отображения результата проверки.Your delegate should set this value to indicate the result of the validation.

Наследование
HttpCacheValidateHandlerHttpCacheValidateHandlerHttpCacheValidateHandlerHttpCacheValidateHandler

Примеры

В следующем примере кода показано, как добавить новый делегат проверки кэша в приложение.The following code example demonstrates how to add a new cache validation delegate to an application.


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 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
    

Комментарии

Если кэшированный элемент становится недействительным в области действия HttpCacheValidateHandler метода, он удаляется из кэша, а запрос элемента обрабатывается как промахи в кэше.If a cached item is invalidated within the scope of the HttpCacheValidateHandler method, it is evicted from the cache and the request for the item is treated as a cache miss.

Методы расширения

GetMethodInfo(Delegate) GetMethodInfo(Delegate) GetMethodInfo(Delegate) GetMethodInfo(Delegate)

Получает объект, представляющий метод, представленный указанным делегатом.Gets an object that represents the method represented by the specified delegate.

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

Дополнительно