asp.net-mvc – Donut hole缓存 – 排除MiniProfiler.RenderIncludes
发布时间:2020-05-22 16:22:39 所属栏目:asp.Net 来源:互联网
导读:我有一个使用OutputCache属性修饰的ASP.NET MVC操作,但问题是MiniProfiler输出也被缓存.我想从缓存(圆环孔)中排除MiniProfiler输出,但我不确定如何排除像MiniProfiler.RenderIncludes()之类的调用. 谁碰巧知道我怎么做到这一点? 如果在生产中使用MiniProfile
|
我有一个使用OutputCache属性修饰的ASP.NET MVC操作,但问题是MiniProfiler输出也被缓存.我想从缓存(圆环孔)中排除MiniProfiler输出,但我不确定如何排除像MiniProfiler.RenderIncludes()之类的调用. 谁碰巧知道我怎么做到这一点? 解决方法如果在生产中使用MiniProfiler,这一点非常重要.好像第一次访问页面是由启用了MiniProfiler的用户启动的,所有后续请求都将在DOM中包含MiniProfiler结果(因为它们现在被缓存).结果不仅不正确(因为他们只考虑首次加载),但所有访问者都能看到您的MiniProfiler结果.首先,为了实现甜甜圈洞缓存,我正在利用: http://mvcdonutcaching.codeplex.com/ 这允许您添加在使用OutputCache时不会缓存的操作. 鉴于上述情况,您可以删除@using StackExchange.Profiling;从您的布局页面.然后你可以替换: @MiniProfiler.RenderIncludes() 附: @Html.Action("MiniProfiler","DoNotCache",excludeFromParentCache: true)
我创建了一个DoNotCache控制器,因此我的所有非可缓存元素都在一起,但这不是必需的,您可以将此操作放在任何控制器中. public ActionResult MiniProfiler()
{
return View();
}
然后视图本身看起来像: @using StackExchange.Profiling;
@{
Layout = null;
}
@MiniProfiler.RenderIncludes()
这将确保MiniProfiler结果在适当时显示,并且即使在使用DonutOutputCache批注的位置也不会在生产中缓存. (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-mvc – ASP.Net 5中缺少FormCollections
- asp.net-mvc – Asp.Net MVC3 RC Razor视图:在块内嵌入代码
- asp.net – SQL Timeout过期2秒查询
- asp.net-mvc – 神控制器 – 如何防止它们?
- 非常非常简单的asp.net页面需要永远加载
- asp.net-mvc – 使用LINQ的多个或单个存储库
- 将密码哈希从ASP.NET Identity 2.0迁移到3.0
- asp.net-web-api – 在Web Api / Owin架构中,处理“/ token
- ASP.NET表单认证在iPad上显示登录页面
- asp.net – 禁用按钮但看起来很活跃
推荐文章
站长推荐
- asp.net core 2.0 – 多个项目解决方案docker文件
- ASP.net ViewState – 即使在禁用时,也存在一些视
- asp.net-mvc – 在OS X 10.7.4上的MonoDevelop中
- asp.net – 从数据库加载时,DateTime.Kind设置为
- asp.net-mvc-3 – 使用.SetValidator()时,Fluent
- asp.net – 在WatiN中如何等到回发完成
- 有没有办法将内部控件放在ASP.NET自定义控件中?
- asp.net – 连接到源文件XYZ的撤消管理器时出错
- asp.net-mvc – thinktecture identityserver v3
- asp.net – 如何以编程方式回收.net Web应用程序
热点阅读
