1

我有一个 MVC3 应用程序,它提供存储在数据库中的视图。我创建了一个VirtualPathProviderand 在我的GetFileandFileExists方法中我去数据库并返回正确的东西。到现在为止还挺好。

现在我想缓存从GetFile. 我知道 MVC 已经做了一些视图缓存,我们可以通过GetCacheDependency方法对其进行一些控制。但是我们有比这更多的控制权吗?例如,我们可以在那里使用自定义缓存吗?就我而言,我有兴趣在本地文件系统上缓存视图并自己做缓存失效。

一个简单的方法是在我的GetFile方法中自己做,但如果在 MVC 中有一个自然的扩展点,我宁愿使用它。

谢谢

4

2 回答 2

1

我在看东西,注意到你的问题,没有得到回答。您将需要GetFileHash()GetCacheDependency(). 然后,您需要实现自己的CacheDependency以使 ASP.NET 缓存无效。

于 2012-08-15T22:15:50.797 回答
0

要么使用OutputCacheAttribute

http://msdn.microsoft.com/en-us/library/system.web.mvc.outputcacheattribute.aspx

或尝试从中派生。

于 2012-03-29T20:42:13.380 回答