asp.net-mvc 中的缓存

2023-11-22

我想在我的 asp.net-mvc 站点中缓存最繁重的数据库操作。 在我的研究中我发现

  • 甜甜圈缓存在菲尔的博客上
  • 缓存/压缩Kazi 博客上的过滤器
  • Scott Hansleman 的播客介绍了他们如何在 SO 中缓存内容。

但我觉得我还没明白。
我希望能够根据几个参数缓存我的 POST 请求。这些部分位于一个对象中。所以我想缓存以下请求的结果:

public ActionResult AdvancedSearch(SearchBag searchBag)

其中 searchBag 是一个包含(一堆)可选搜索参数的对象。 我的观点本身很简单(理应如此),但数据访问可能相当耗时,具体取决于搜索包中填写的字段。

我觉得我应该缓存在我的数据层上,而不是我的操作上。
我应该如何在 OutputCache 属性中使用 VaryByParam?


我也喜欢在模型或数据层中缓存。这隔离了与从控制器/演示文稿检索数据有关的所有内容。您可以从以下位置访问 ASP.NET 缓存:System.Web.HttpContext.Current.Cache或使用企业库中的缓存应用程序块。根据查询参数为缓存数据创建密钥。更新数据时请务必使缓存失效。

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

asp.net-mvc 中的缓存 的相关文章

  • 缓存大小和数组大小如何影响数组上数学运算的性能?

    我正在尝试学习缓存的用法 从我通过一些示例实验程序看到的情况来看 如果我将数组大小增加到超过特定值 则执行程序迭代数组并对元素进行一些操作所需的时间会突然增加很多 任何人都可以简单地解释一下术语缓存大小和数组大小如何影响数组上数学运算的性能
  • 同一项目中的 Web 表单视图引擎和 razor 视图引擎

    我正在开发一个产品 到目前为止 该产品的所有视图都使用 Web 表单视图引擎 有太多文件需要重构 有什么原因导致我无法在同一项目中使用 razor 和 Web 表单视图引擎吗 ASP NET MVC 支持在默认配置的同一项目中使用 Razo
  • MVC3 RenderPartial 跨多个页面缓存

    谁能告诉我是否可以跨多个页面缓存 RenderPartial 我有一个用于用户配置文件的 RenderPartial 除非用户更新其配置文件 否则它实际上不会改变 所以我真的不想每次加载页面时都回去获取他 她的个人资料 我宁愿传递部分内容
  • 如何在aspasp.net MVC中隐藏Webgrid中的列?

    我是 MVC 新手 我使用Webgrid展示一些客户价值 我需要将列及其标题隐藏起来 我该怎么做呢 CSS gridhide visibility hidden Code grid Column Id ID style gridhide 我
  • 使用 IdentityServer 4 时如何在 Api 项目中添加附加声明

    对不起我的英语不好 我有三个项目 IdentityServer Ensino Mvc Ensino Api IdentityServer 项目提供来自 IdentityServer4 库的主要身份信息和声明 声明配置文件 声明地址 声明 S
  • 无法解析请求正文

    我一直在尝试解决以下错误 但无法解决 下面是代码 HttpPost public async Task
  • ASP.NET MVC:文件响应流?

    当我从 MVC 操作方法返回 FilePathResult 时 会发生以下哪种情况 假设结果指向的文件非常大 文件被完整地加载到服务器的内存中 然后发送到客户端 该文件以某种方式传输到客户端 其方式在任何时候都不会完全加载到服务器的内存中
  • 如何使用带有 Scripts.Render 的 ASP MVC 4 捆绑包的脚本延迟属性

    我浏览了 Google 和 Stackoverflow 但没有找到答案 是否有任何内置方法可以使捆绑包按延迟执行 或者有人知道有人为此编写的扩展帮助器方法吗 尝试将 Web Optimization 升级到版本 1 1 0Codeplex
  • 在 SelectList 集合中设置所选项目

    我有一堂具有以下属性的课程 它构建了一个SelectList现有列表中的对象 然后设置所选项目 public SelectList ProviderTypeList get SelectList list new SelectList my
  • 无法将代码优先迁移应用到 mysql 数据库

    我正在使用 EF 代码优先模型开发 asp net mvc 我正在尝试首先使用 EF 代码将迁移应用到我的项目中 我正在使用 MySql 数据库 目前我使用的是 EF 4 3 1 版本和 6 6 4 0 版本的 mysql Connecto
  • ASP.NET MVC 4 FileResult - 错误

    我在控制器上有一个返回 PDF 的简单操作 工作正常 public FileResult GetReport string id byte fileBytes manager GetReport id string fileName id
  • MVC WebGrid 设置渲染的ID

    使用 MVC 3 中的 WebGrid 如何在呈现时指定控件的名称 即呈现时表的 id var someGrid new WebGrid source Model Users defaultSort Name rowsPerPage 50
  • 即使在不活动状态下,Hangfire 也会继续运行 SQL 查询

    我正在开发一个 ASP net MVC 5 网站 并使用 Hangfire 来安排一些任务 在本例中每 3 分钟一次 我知道一个事实是 运行这样的任务 以及与之相关的数据库查询 只需要几秒钟 我面临的问题是 Hangfire 似乎让我的 S
  • 使用 MemoryCache 而不是普通的旧 Dictionary 的令人信服的理由是什么

    我刚刚遇到内存缓存 http msdn microsoft com en us library system runtime caching memorycache aspx这是 NET 4 中的新增功能 我知道如果你想的话它会很有用 限制
  • 在实体框架中不使用 Dispose 或 using()

    我一路上正在编写一个网络应用程序并学习实体框架 如果我做错了什么 我很好奇 我在查询时没有使用过 dispose 或 using 语句 我的存储库示例 public User GetUserById int sessionId var us
  • 配置的托管模块出现 Asp.net MVC 错误

    我有自定义身份验证HttpModule这是相当困难的 但我希望它仅针对托管请求运行 而不是静态请求 Asp net MVC 自动添加 IIS7 Web 服务器的配置部分
  • 将复杂类型数组添加到 RouteValueDictionary

    我想知道是否有一种优雅的方法将复杂类型数组添加到 RouteValueDictionary 或兼容类型 例如 如果我有一个类和一个操作 public class TestObject public string Name get set p
  • 为什么我的 ASP.NET MVC 应用程序在单个会话中多次触发 Session_Start?

    我们有一个 MVC NET 应用程序在重新启动时遇到致命错误 在 Session Start 事件处理程序中 我们将会话 id 添加到字典中 在 Session End 处理程序中 我们将其删除 考虑以下请求序列 获取主页 mvc 获取ma
  • CheckboxFor 不与嵌套对象绑定

    当模型中嵌套的对象中定义属性时 CheckBoxFor 不受限制 这是一个例子 我有一个SearchOptions模型包含一个List
  • 找不到 securityToken 的有效键映射

    我正在开发测试应用程序 用于在 MVC ASP net Visual studio 2013 中显示经过身份验证的身份声明 我已通过以下方式从活动目录进行身份验证 1 在解决方案中添加新的mvc项目 2 单击更改身份验证 3 选择组织账户

随机推荐

  • 为什么 a[c] 覆盖 a[b]? [复制]

    这个问题在这里已经有答案了 我不明白为什么输出是456 我认为a b 中的b是一个对象的属性 而c是a的另一个属性 它们与 var b 和 c 完全无关 但为什么 a c 会覆盖 a b 呢 var a b key b c key c a
  • 错误:“:”不是有效的资源名称字符

    我已将 Eclipse 项目导入到 android studio 我用 google 搜索但没有得到正确的答案 发生这些错误 D app src main res values strings xml Error Error is not
  • 测量 Android 上的数据漫游流量?

    刚从冰岛度过一个愉快的假期回来 正在等待我的电话公司的数据漫游账单 我希望尽可能限制我的流量 但我想提前知道 我使用了非常好的应用程序网络计数器但它根本没有测量漫游数据流量 所以我想构建自己的应用程序 仅测量漫游数据流量 我有一些布尔值要开
  • 使用 == 比较 numpy 数组的规则是什么?

    例如 尝试理解这些结果 gt gt gt x array 0 1 2 3 4 5 6 7 8 9 gt gt gt x np array 1 2 astype np float32 array 0 1 0 0 0 0 0 0 0 0 0 0
  • npm run 分段错误:11

    我正在尝试 npm run HOT 1 node node modules bin react native webpack server start hot 收到此错误 gt email protected hot Users user
  • Chartkick 柱形图多种颜色

    我在用着图表踢在我的 RoR 项目中生成图表 效果非常好 与谷歌图表一起 我创建了一个柱形图 with 只有 2 个酒吧 男性和女性 现在客户希望每个条形都有不同的颜色 那可能吗 我看过这个帖子 如何更改使用 Chartkick 创建的柱形
  • 如何显示 bash 会话的当前进程树?

    我想创建一个 bash 别名 它为我提供从我正在使用的当前 bash 会话到 init 的进程树 用例是为了知道我是否使用过bash or vi s shell命令 我正在使用 MacOS X 我听说过pstree 但是好像只显示子进程 而
  • 在 Typescript 中向数组添加属性

    我正在尝试向 Typescript 中的 Array 对象添加一个方法 我已经在 SO 上找到了其他解决方案 但这些解决方案都不适合我 我的代码如下所示 interface Array average gt number Array pro
  • 需要根据元素升序将列表划分为列表(Haskell)

    假设我有这样的列表 4 5 6 7 1 2 3 4 5 6 1 2 我需要一个 Haskell 函数来将该列表转换为一个列表列表 该列表由原始列表的片段组成 这些片段按升序形成一系列 所以结果应该是这样的 4 5 6 7 1 2 3 4 5
  • 在不可变类中,为什么字段被标记为私有?

    创建不可变类时将字段设为私有有什么好处 我见过为什么在创建不可变类时 字段被声明为私有 但我没有从这篇文章中理解任何内容 有人可以向我解释一下吗 最好的解释方法是举个例子 public class Immutable private fin
  • 如何使用 WMI 和 Python 弹出 CD?

    使用 Windows 的 WMI 库 如何弹出安装在特定 CD DVD 驱动器中的 CD ROM 由于我在 Python 上使用 wmi py 库 因此我要求获取 WMI 文档或示例的源代码 如果解决方案能够满足比 Windows 2000
  • scala - 将超过22个元素的json解析为案例类

    这个问题或类似的问题之前曾发布过 但是没有一个解决方案适用于最新的库 经过广泛的搜索 到目前为止 我没有发现任何证据表明最流行的库的最新版本spray json or play json 或其插件 可以处理这种情况 有没有什么东西可以将超过
  • 为什么java内部函数仍然有代码?

    Java API 中有许多方法是内在函数 但在查看源代码时仍然具有与其关联的代码 例如 Integer bitCount 是一个内在函数 但如果您打开 Integer 类文件 您可以看到包含它的代码 如果编译器 jvm 不一定使用该代码 那
  • 先验算法

    我之前曾多次听说过 Apriori 算法 但从未有时间或机会深入研究它 有人可以用简单的方式向我解释该算法的工作原理吗 另外 一个基本的例子会让我更容易理解 先验算法 它是一种用于数据集中频繁模式挖掘的候选生成和测试方法 有两件事你必须记住
  • 如何在 tmap 中定位标题和图例?

    我是编程新手 目前正在参加使用 R 的空间分析入门课程 以下代码生成下面包含的 tmap 如何将每个 tmap 的标题居中并将图例放置在右上角 而不将其放在地图本身之上 非常感谢你的协助 ga1 tm shape a2georgia tm
  • 为什么 Babel 7 对浏览器使用 require() 函数,而浏览器对此一无所知?

    我尝试在我的模块中使用 d3 js 我使用 Babel 7 来转译我的代码源 这是我的package json name d3 learning version 1 0 0 description main index js directo
  • D8045:无法使用 /clr 选项编译 C 文件“serialcommands.c”

    我收到编译器错误 D8045 无法使用 clr 选项编译 C 文件 serialcommands c 该文件是一个 C 库 编写用于通过串行端口与 TI 处理器进行通信 我需要做的任务是用 CLR 包装器包装这个库 如果您想从 CLI 问题
  • 使用 axwindowsMediaPlayer 创建播放列表时发生灾难性失败(HRESULT 异常:0x8000FFFF)

    我正在使用 axwindowsMediaPlayer 对象在 winform 中显示视频 我特别想播放一个播放列表 在我的电脑 win7 上一切正常 并且在另一台装有 winXP 的电脑 最终用户的电脑 上也可以正常工作 但几天前发生了一些
  • Bokeh 工具在 QWebView 中不起作用

    下午好 经过多年的阅读 第一次在 stackoverflow 上发帖 令人兴奋 我使用 bokeh 生成 html 代码 并将其输入到一个非常简单的 PyQt4 GUI 中的 QWebView 中 散景图顶部的标准工具在 QWebView
  • asp.net-mvc 中的缓存

    我想在我的 asp net mvc 站点中缓存最繁重的数据库操作 在我的研究中我发现 甜甜圈缓存在菲尔的博客上 缓存 压缩Kazi 博客上的过滤器 Scott Hansleman 的播客介绍了他们如何在 SO 中缓存内容 但我觉得我还没明白