3

我正在构建一个负载非常密集的 ASP.net MVC 4 系统,并且希望OutputCache在两个关键页面上使用该属性。这OutputCache在使页面非常快速方面具有预期的效果,但我需要能够控制它们何时过期,因为数据的更改必须及时反映在网站上。

这是我的代码示例 - 我正在尝试将页面缓存 10 分钟或直到数据库表更改。我的 SQLDependency 工作正常。

[OutputCache(Duration = 600, SqlDependency = "myDb:myTable")]
public ActionResult Index()
{
    // Do Stuff                     
    return View();
}

[OutputCache(Duration = 600, SqlDependency = "myDb:myTable", VaryByParam = "id")]
public ActionResult Details(int id)
{
    // Do Stuff                     
    return View();
}

有 54 个不同的详细信息页面。当数据库表中的某些内容发生更改时,我需要索引缓存和所有详细信息页面都将过期。目前缓存正在工作,但没有像我期望的那样过期。

我的问题是

  1. `OutputCache' 属性中不同参数的相对优先级是什么?
  2. 我当前的配置应该正常工作吗?

很感谢任何形式的帮助。

4

1 回答 1

0

看看下面的链接:

SQL 缓存依赖

请注意以下 IIS 用户权限:

GRANT SUBSCRIBE QUERY NOTIFICATIONS TO "TESTSERVER\ASPNET"
于 2013-08-14T01:09:53.187 回答