用着方便,但我感觉在前端调用上有些不便,可以我把他的代码又改了一下,呵呵!
老赵代码的调用:
Before Rendering:<%= DateTime.Now %>Rendering:<%= Html.Cache("Now", null, DateTime.Now.AddSeconds(60), Cache.NoSlidingExpiration, () => { System.Threading.Thread.Sleep(5000); return DateTime.Now; }) %>After Rendering:<%= DateTime.Now %>
占占页面片断缓存的调用:
@Html.Cache("test", DateTime.Now.AddMinutes(1), @ @DateTime.Now );
前台UI层使用了razor视图引擎,写法上很简介,它与C#方法容为一体,我的HTML代码以参数的形式传递给了Cache方法,再看一下Cache方法原型:
/// /// 缓存的扩展方法 /// public static class CacheExtensions { /// /// 对页面中指定字符串进行缓存 /// /// /// 缓存Key /// 缓存依附对象,可以为null /// 过期时间 /// 相对本次过期时间 /// 要缓存对象 /// public static HelperResult Cache(this HtmlHelper htmlHelper, string cacheKey, CacheDependency cacheDependencies, DateTime absoluteExpiration, TimeSpan slidingExpiration, Func
呵呵,赶快去部署一下吧,有时,我们在考虑代码的功能性的同时,也应该多注意一下代码的调用的方便性与代码表现出现的艺术性!
感谢您的阅读!
感谢老赵同志!