我正在使用.NET Framework 4.5.1和ASP.NET MVC 5.
我有以下行动:
[OutputCache(Duration = 86400 /* 24 hours */, VaryByParam = "none")]
public PartialViewResult WhatsNew()
{
var viewModel = new WelcomeWhatsNewViewModel
{
WhatsNewHeadlines = _service.GetWhatsNewHeadlines()
};
return PartialView("WhatsNew", viewModel);
}
我不清楚如何添加具有文件依赖性的操作结果缓存,以便在更新剃刀视图时清除缓存。这可能吗?
我查看了ASP.NET MVC 5源代码,但我无法看到如何实现这一点,我做了一些在线搜索但却没有找到任何解释是否可以实现这一点
答案 0 :(得分:2)
当您修改cshtml文件时,下一个请求将强制重新编译并且需要卸载应用程序域,因此将清除httpruntime缓存,这是支持outputcache的内容。如果由于某种原因没有发生这种情况。
以下是在操作中添加缓存依赖关系的方法
$matches