HttpApplication.GetOutputCacheProviderName(HttpContext) 方法

定义

获取为网站配置的默认输出缓存提供程序的名称。

C#
public virtual string GetOutputCacheProviderName(System.Web.HttpContext context);

参数

context
HttpContext

一个 HttpContext,提供对服务于 HTTP 请求的内部服务器对象的引用。

返回

默认提供程序的名称。

例外

contextnull 或是一个空字符串 ("")。

示例

以下示例演示如何以编程方式为转到Advanced.aspx页的任何 HTTP 请求指定名为 DiskCache 的缓存提供程序。

C#
public override string GetOutputCacheProviderName(HttpContext context)  
{  
    if (context.Request.Path.EndsWith("Advanced.aspx"))  
        return "DiskCache";  
    else  
        return base.GetOutputCacheProviderName(context);  
}  

注解

可以重写此方法,并使用它来返回为网站配置的任何输出缓存提供程序的名称。 ASP.NET 检索对命名提供程序的引用,并使用它来存储当前正在执行的请求的输出缓存数据。

默认情况下,在 ASP.NET 中,所有 HTTP 响应、呈现的页面和控件都使用内存中输出缓存。 可以通过为 指定不同的提供程序名称 defaultProvider来更改用于 Web 应用程序的默认输出缓存提供程序。

此外,还可以为单个控件和单个请求选择不同的输出缓存提供程序。 为不同的 Web 用户控件选择不同的输出缓存提供程序的最简单方法是在页面或控件指令中使用新 providerName 属性以声明方式执行此操作,如以下示例所示:

<%@ OutputCache Duration="60" VaryByParam="None"   
    providerName="DiskCache" %>  

若要为 HTTP 请求指定不同的输出缓存提供程序,请在 Global.asax 文件中重写此方法,以编程方式指定要用于特定请求的提供程序。 有关详细信息,请参阅 ASP.NET 缓存概述

适用于

产品 版本
.NET Framework 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1