软件下载 | 资讯教程 | 最近更新 | 下载排行 | 一键转帖 | 发布投稿
您的位置:最火下载站 > 网络编程 > ASP.NET > ASP.NET MVC 1.0 OutputCacheAttribute

ASP.NET MVC 1.0 OutputCacheAttribute

缓存是网站开发的 "杀手锏",作为性能提升的关键因素,MVC 自然不会缺少这方面的内容。只不过,它直接借用了 ASP.NET 本身的页缓存机制。

public class OutputCacheAttribute : ActionFilterAttribute
{
public override void OnResultExecuting(ResultExecutingContext filterContext)
{
...
OutputCachedPage page = new OutputCachedPage(_cacheSettings);
page.ProcessRequest(HttpContext.Current);
}

private sealed class OutputCachedPage : Page
{
...
}
}

使用方法和参数都是我们所熟悉的。

[OutputCache(Duration = 10, VaryByParam = "none")]
public ActionResult Index()
{
return View();
}

不过我个人并不建议将缓存参数写到 Controller cs 代码里面,因为调整缓存策略时还得重新编译程序集文件,远不如直接写在 .aspx 文件中方便。

<%@ Page Language="C#" Inherits="System.Web.Mvc.ViewPage" %>
<%@ OutputCache Duration="10" VaryByParam="None" %>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>Index</title>
</head>
<body>
<%= DateTime.Now %>
</body>
</html>

当然,也可以将参数写在配置文件里,这样就可以 "OutputCacheAttribute" 和 "修改方便" 两者兼得了。

[OutputCache(CacheProfile="Index")]
public ActionResult Index()
{
return View();
}

web.config
<system.web>
<caching>
<outputCacheSettings>
<outputCacheProfiles>
<add name="Index" duration="10" varyByParam="none"/>
</outputCacheProfiles>
</outputCacheSettings>
</caching>
</system.web>

我们还可以实现静态 HTML 化的缓存来提升网站性能。
    相关阅读
    栏目导航
    推荐软件