甜甜圈孔缓存 - 排除 MiniProfiler.RenderInincludes

2024-05-25

我有一个 ASP.NET MVC 操作,它装饰有OutputCache属性,但问题是 MiniProfiler 输出也被缓存。我想从缓存中排除 MiniProfiler 输出(甜甜圈洞),但我不确定如何排除像 MiniProfiler.RenderIncludes() 这样的调用。

有人知道我该怎么做吗?


如果在生产中使用 MiniProfiler,这一点很重要。就像启用了 MiniProfiler 的用户首次访问页面一样,所有后续请求都将在 DOM 中包含 MiniProfiler 结果(因为它们现在已缓存)。结果不仅会不正确(因为他们只考虑首次加载),而且所有访问者都将能够看到您的 MiniProfiler 结果。

首先,为了启用甜甜圈洞缓存,我使用:

http://mvcdonutcaching.codeplex.com/ http://mvcdonutcaching.codeplex.com/

这允许您添加使用 OutputCache 时不会被缓存的操作。

鉴于上述情况,您可以删除@using StackExchange.Profiling;从您的布局页面。然后您可以替换:

@MiniProfiler.RenderIncludes()

With:

@Html.Action("MiniProfiler", "DoNotCache", excludeFromParentCache: true)

我创建了一个 DoNotCache 控制器,因此所有不可缓存元素都在一起,但这不是必需的,您可以将此操作放置在任何控制器中。

 public ActionResult MiniProfiler()
 {
      return View();
 }

然后视图本身看起来就像:

@using StackExchange.Profiling;
@{
    Layout = null;
}
@MiniProfiler.RenderIncludes()

这将确保 MiniProfiler 结果在适当的时候显示,并且即使在您使用 MiniProfiler 的地方也不会缓存在生产中DonutOutputCache注解。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

甜甜圈孔缓存 - 排除 MiniProfiler.RenderInincludes 的相关文章

  • ASP.NET MVC 应用程序和 ASP.NET Web 应用程序有什么区别

    任何人都可以解释一下 ASP NET 中的 MVC 和 Web 应用程序之间的区别 在mvc中我们可以找到controllers文件夹 我们不能在 Web 应用程序中找到控制器文件夹吗 请消除我的困惑 MVC 使用控制器来编排模型和视图 以
  • 如何在 MVC4 的 UserProfile 中创建自定义附加字段

    我遇到了新的 ASP MVC 4 功能 它附带了新的成员资格数据库模式和新的初始化 在 mvc 3 和旧版本中 开发人员能够使用 web config 中的规范创建自定义用户配置文件字段 但现在我面临默认 mvc 4 项目中过滤器命名空间中
  • Bootstrap 字形未显示在表单中

    我正在尝试不同的方法来制作带有确认的表格 我有以下形式以及一个超链接 下面的超链接正确显示字形 但表单内的提交按钮仅在灰色按钮中显示为 提交 提交按钮和超链接的 CSS 是否需要不同 div class text center using
  • 控制器名称是从类名称派生的吗?

    这是一个新手问题 我正在查看默认的 asp net mvc3 项目 注意到有一个名为 public class AccountController Controller 我查看了整个代码 找不到指定 AccountController 映射
  • 使用 R.Net 版本 1.5.5 创建 REngine 实例

    我正在尝试创建一个 Hello World 示例R Language using R Net版本1 5 5 从 NuGet 加载 不幸的是 我见过的在线示例都不起作用 这就是我所做的 已安装Microsoft R Open 3 2 4 增强
  • asp.net mvc 3,主题(不同视图)

    我想向我的网站添加将使用完全不同视图的主题 我想在我的项目中看到它们 如下所示 Views Theme1 Views Theme2 而不是默认的 Views 当然 我需要一种简单的方法来在它们之间进行切换 所以问题是 如何让 ViewEng
  • mvc 登录尝试失败后生成验证码

    所以我能够让我的验证码工作正常工作 但我的问题是 我想让它只在 3 次尝试后出现 我的一个选择是将用户重定向到一个已经有验证码的视图 重复登录 但带有验证码 然后让他通过该页面登录 还有其他选择吗 我觉得部分视图会导致页面发布出现问题 您认
  • 如何将 mvc-mini-profiler 与 Entity Framework 4.1 一起使用

    我尝试将 mvc mini profiler 与 MVC3 一起使用 但不断收到以下错误 无法确定 MvcMiniProfiler Data ProfiledDbConnection 类型连接的提供程序名称 下面是我用来尝试实例化上下文的代
  • 如何在 ASP.NET MVC 中手动设置用户角色?

    我正在从事的这个项目要求我保留管理员用户的本地数据库 并为普通用户使用外部数据库 在管理数据库中通过身份验证的任何人都应被分配 管理员 角色 而通过其他数据库进行身份验证的任何人将始终被分配 用户 角色 我可以手动分配这些角色吗 我不需要角
  • 从mvc url中隐藏一个控制器名称,显示其他控制器名称

    我有两个控制器 HomeController 和 ResourcesController 当请求对 HomeController 执行操作时 我想从 url 中隐藏 Home 但对于 ResourcesController 或任何其他 co
  • 从 .Net MVC 视图获取 HTML,而不在浏览器中实际渲染视图?

    我的控制器中有一个 ActionResult 我想从中发送 HTML 电子邮件 该电子邮件的正文是由视图生成的 我可以在传递模型时获取视图的结果并避免将其发送到浏览器 而不是在控制器中使用 2 个 actionresults 方法吗 Mvc
  • IIS 7 错误:无法执行程序。正在执行的命令是 csc.exe(ApplicationPoolIdentity 默认设置)

    这是我的第一个问题 如果我有一些语法错误 请向我道歉 问题描述 我在多台服务器上安装了运行在 IIS 7 Windows Server 2008 和 SQL Server 2008 R2 上的基于 32 位 MVC 5 的 CRUD 系统
  • 包括过滤器子集合[重复]

    这个问题在这里已经有答案了 我在为 LINQ 查询中包含的项目添加一些过滤条件时遇到一些困难 我的查询就像 var item Context Order Include Inner Include Inner first Include I
  • asp.net mvc 4 - 可以在每个线程共享 DbContext 吗?

    From 每个 Web 请求一个 DbContext 为什么 https stackoverflow com questions 10585478 one dbcontext per web request why 我的理解是 DbCont
  • ASP.NET MVC 子操作的路由匹配

    子动作的路由匹配方法与普通动作有什么不同吗 换句话说 子操作是否有一些自动生成的 url 来进行与父操作类似的匹配 父级或子级动作处理没有区别 任何操作都遵循您在中设置的相同路线定义Application Start 这意味着父母的行为以及
  • 使用 AJAX 加载部分视图不起作用

    请原谅我 我是 MVC 和 AJAX 的新手 目前我只是提交一个表单 我想使用表单中的数据使用 ajax 更新部分视图中的表 My UserInfo部分视图如下所示 model IEnumerable
  • 构建 ViewModel 的合适粒度是多少?

    我正在开发一个新项目 在看到以前项目的一些困难后 这些项目没有提供足够的视图与模型的分离 特别是使用 MVC 模型和视图开始有点相互渗透 我想使用 MVVM 我了解基本概念 并且很高兴开始使用它 然而 有一件事我有点忽略 ViewModel
  • ASP.NET MVC,控制器可以改变提交的值吗?

    ASP NET MVC 中是否允许更改提交的值 HttpPost public ActionResult Create Person toCreate toCreate Lastname toCreate Lastname A return
  • 从 mvc 控制器使用 Web api 控制器操作

    我有两个控制器 一个mvc控制器和一个api控制器 它们都在同一个项目中 HomeController Controller DataController ApiController 如果我想从 HomeController 中使用 Dat
  • 无法将 MVC 4 部署到服务器

    我的 Web 应用程序只是一个用 VS 2010 MVC 4 制作的简单 Web 应用程序 没有任何外部代码 它只是 VS 2010 的默认应用程序 我有 Plesk 的豪华 Windows 托管 我从未更改过帐户中的任何功能 我将所有文件

随机推荐

  • 如何去交织位(UnMortonizing?)

    从 32 位 int 中解交织位的最有效方法是什么 对于这种特殊情况 我只关心奇数位 尽管我确信将任何解决方案推广到这两个集合都很简单 例如我想转换0b01000101 into 0b1011 最快的方法是什么 EDIT 在这个应用程序中
  • 如何使用 WhatsAPI 官方在 PHP 中从 WhatsApp 发送消息?

    我正在尝试使用 WhatsApi 官方库通过 WhatsApp 从 php 文件发送消息 我已经将库移到了我的 Apache Web 服务器中的一个文件夹中 调用测试 如下所示 文件whatsapp php 是这样的
  • 更改 RaphaelJS 中的文本

    如何更改 RaphaelJS 创建的文本节点中的文本 首先 我使用 Raphael 创建一个带有文本字符串的新元素 稍后我想更改此文本 如果我这样做的话对我来说会更容易not必须重新初始化该元素 因为将附加大量属性 重新创建会很痛苦 有没有
  • Java RMI 在租约到期后不关闭套接字

    我启用 RMI 的应用程序似乎正在泄漏套接字 我有一个通过 RMI 提供服务的 Java 应用程序 它使用在 Linux 上运行的 Java SE 1 6 RMI 实现 我观察到的问题是 如果客户端使用注册表获取对我的远程对象的引用 然后连
  • 有人为 MSP430 的 IAR Embedded Workbench 实现了 __getzone() 吗?

    我必须在我的应用程序中处理一些时间转换 我想尽可能坚持使用标准库函数 现在我使用 time t 结构作为我的系统时间基准 但是 某些设备可以将时间同步到我的设备 该时间可能是也可能不是 UTC 此外 我的设备会将时间同步到另一台设备 并且该
  • Python->Beautifulsoup->Webscraping->循环 URL(1 到 53)并保存结果

    这是我正在尝试抓取的网站 http livingwage mit edu http livingwage mit edu 具体网址来自 http livingwage mit edu states 01 http livingwage mi
  • C 函数声明中的无类型参数

    最近我一直在查看 Steven Skiena 的在线资源中的一些 C 示例代码 算法设计手册 http www cs sunysb edu skiena algorist book programs 并且对他的一些函数调用的语法感到困惑 诚
  • 如何使用ssh直接连接远程docker容器

    我想直接使用 ssh 连接到远程运行的 Docker 容器 通常我可以 ssh i privateKey user host docker ps which will list all running containers docker e
  • 如何保持诗歌和承诺版本同步?

    我有一个pyproject toml with tool poetry name my project version 0 1 0 tool commitizen name cz conventional commits version 0
  • ZF2 共享模块事件管理器

    当特定情况发生时 我需要在每个模块中实现一个事件触发器 我还需要所有其他模块在触发该事件时必须执行某些工作 请注意这一点 我正在尝试创建一些通用端点 我可以在其中发送触发器 并且所有模块都需要监听 但我在弄清楚如何实现这一点时遇到了一些麻烦
  • 将 Bootstrap 导航栏列表项包裹在居中的品牌图像周围

    我整晚都在搞乱这个问题 没有解决办法 我正在使用 bootstrap 2 32 对于 joomla 模板 尚不支持 BS3 并且我将拥有动态数量的列表项 我需要将列表项居中 但也同样包裹在中心 brand img 的左侧和右侧 我可以把它分
  • 包含 Qt 标头的正确方法是什么?

    到目前为止我知道几种方法 includeQt 类 include
  • java中的EhCache默认缓存

    我对 ehCache 有这样的配置
  • Azure DevOps - 使用 GUI 而不是 YAML 来编辑构建管道

    不久前 Azure DevOps 添加了对 YAML 构建管道的支持 这对于高级用户来说非常好 我明白 专业人士只使用命令行和纯文本工具 GUI 适合弱用户 原因有很多 有没有办法返回 GUI 经典编辑器 来编辑现有管道 我已禁用该功能 如
  • 更短的 POST 验证方式?

    我总是进行 POST 的检查验证 有时它会变得太混乱和冗长 保持简短和整洁的最佳方法是什么 Example if isset POST albumName trim POST albumName isset POST slugName PO
  • 在 Spring Batch 的 SkipPolicy 中访问作业文件名参数

    我有一份 Spring Batch 的工作 我使用 BeanIO 读取一些文件 并且我会处理无效文件 所以我创建了一个 SkipPolicy 类 public class FileVerificationSkipper implements
  • Perl 脚本的 shebang 行应该使用什么?

    哪一个用作 Perl 脚本的 shebang 行更好或更快 perl perl exe fullpath perl perl exe partialpath perl perl exe 并且 当使用 perl 当它在特定系统上运行时 我如何
  • 从另一个线程在主线程中运行代码

    在 android 服务中 我创建了线程来执行一些后台任务 我遇到一种情况 线程需要在主线程消息队列上发布某些任务 例如Runnable 有没有办法得到Handler主线程和帖子的Message Runnable从我的另一个线程到它 注意
  • 在 Chrome 中显示输入 type=date-local 的秒数

    在谷歌浏览器中 如果我设置 type 输入的值datetime local包含秒的时间 其中秒值为 0 Chrome 决定不在输入中显示秒值 这意味着用户根本无法设置秒 例如 如果我将值设置为2013 10 24T20 36 01然后Chr
  • 甜甜圈孔缓存 - 排除 MiniProfiler.RenderInincludes

    我有一个 ASP NET MVC 操作 它装饰有OutputCache属性 但问题是 MiniProfiler 输出也被缓存 我想从缓存中排除 MiniProfiler 输出 甜甜圈洞 但我不确定如何排除像 MiniProfiler Ren