ASP.NET自定义输出缓存提供程序(6)
}
}
运行MyOutputCacheProviderWebForm.aspx页面,结果如图19-5所示:
图19-5:示例运行结果
打开“C:\\Cache\\”文件夹,你就能够看见所生成的缓存文件,如图19-6与19-7所示:
图19-6:在本地磁盘生成的缓存文件
图19-7:缓存文件内容
这里需要注意的是,你只能在用户控件中指定@ OutputCache指令的ProviderName属性,但在ASPX页面是不允许你指定@ OutputCache指令的ProviderName属性的。因为在页面中,默认情况下会使用web.config中配置的defaultProvider。
虽然你不能够以声明的方式指定@ OutputCache指令的ProviderName属性,但你可以在Global.asax文件中通过重载GetOutputCacheProviderName(HttpContext context)方法以编程方式指定针对一个具体的请求使用哪一个提供程序。如下面的代码所示:
public override string GetOutputCacheProviderName(HttpContext context)
{
if (context.Request.Path.EndsWith("MyOutputCacheProviderWebForm.aspx"))
{
return "MyOutputCacheProvider";
}
else
{
return base.GetOutputCacheProviderName(context);
}
}
利用ASP.NET 4中增加的输出缓存提供程序扩展,你现在可以为你的Web站点采取更积极和更智能化的输出缓存策略。例如,你可以把一个网站中的用户访问量占“前十名”的那些网页缓存到内存中,而把那些较低访问量的网页缓存到磁盘上。
作者 马伟
相关新闻>>
- 发表评论
-
- 最新评论 进入详细评论页>>
今日头条
更多>>您可能感兴趣的文章
- asp.net 六大内置对象(2)
- 教你如何来恢复一个丢失的数据文件
- ASP.NET数据格式的Format--DataFormatString
- Pro ASP.NET MVC 3 Framework学习笔记之九
- asp.net js模拟Button点击事件
- MVC中一个表单实现多个提交按钮(一个action搞定
- 微软ASP.NET站点部署指南(11):部署SQL Server数据
- winform下通过webclient使用非流方式上传(post)数据和
- 谈.Net委托与线程——创建无阻塞的异步调用(一
- Asp.net MVC源码分析--Model Validation(Client端)实现(2)