当前位置: 代码迷 >> VC/MFC >> mvc 缓存页面 减免服务器压力
  详细解决方案

mvc 缓存页面 减免服务器压力

热度:100   发布时间:2016-05-02 03:17:57.0
mvc 缓存页面 减轻服务器压力

方法:

 1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Web; 5 using System.Web.Mvc; 6 namespace PaiXie.Pos.Admin { 7     /// <summary> 8     /// 缓存页面 9     /// </summary>10     public class CacheFilterAttribute : ActionFilterAttribute {11         /// <summary>12         /// Gets or sets the cache duration in seconds. The default is 10 seconds.13         /// </summary>14         /// <value>The cache duration in seconds.</value>15         public int Duration {16             get;17             set;18         }19         public CacheFilterAttribute() {20             Duration = 60;21         }22         public override void OnActionExecuted(ActionExecutedContext filterContext) {        23             if (Duration <= 0) return;24             HttpCachePolicyBase cache = filterContext.HttpContext.Response.Cache;25             TimeSpan cacheDuration = TimeSpan.FromSeconds(Duration);26             cache.SetCacheability(HttpCacheability.Public);27             cache.SetExpires(DateTime.Now.Add(cacheDuration));28             cache.SetMaxAge(cacheDuration);29             cache.AppendCacheExtension("must-revalidate, proxy-revalidate");30         }    31     }32 }
View Code

调用:

1      [CacheFilter]2         public ActionResult Index() {3 }
View Code

 

1楼最爱晴天
MVC不是自带缓存的标签的么,还用自己写?
Re: conan_lin
@最爱晴天,这个是Filter 统一控制
  相关解决方案