【发布时间】:2011-09-14 09:58:02
【问题描述】:
我想使用输出缓存来避免使用相同的静态查询一遍又一遍地访问我的数据库,但我的控制器具有唯一定义帖子的参数。
我怎样才能在考虑参数的同时仍然支持 asp.net-mvc 中的输出缓存?
【问题讨论】:
-
多个参数如何变化?
标签: c# asp.net-mvc caching outputcache
我想使用输出缓存来避免使用相同的静态查询一遍又一遍地访问我的数据库,但我的控制器具有唯一定义帖子的参数。
我怎样才能在考虑参数的同时仍然支持 asp.net-mvc 中的输出缓存?
【问题讨论】:
标签: c# asp.net-mvc caching outputcache
查看 OutputCache 属性的 VaryByParam 属性。
[OutputCache(Duration=int.MaxValue, VaryByParam="id")]
public ActionResult Details(int id)
{
}
对于每个唯一的 id 值,将创建一个唯一的缓存实例。
编辑:
如果您的缓存需求超出了简单的 VaryByParam 场景,请查看 VaryByCustom。这将允许您设置您认为合适的场景(登录与未登录用户的缓存版本等)
【讨论】: