我在IIS中托管了我的MVC应用程序。我知道使用IIS为静态内容添加输出缓存。但是可以为动态内容添加输出缓存吗?怎么样?我正在使用IIS 7.5版
谢谢。
答案 0 :(得分:0)
您是否需要您的缓存完全是IIS级别?
MVC拥有自己的缓存机制。您可以使用OutputCache
属性。
此属性具有参数VaryByParam
,因此您可以缓存动态内容,如下所示:
[OutputCache(Duration = 30, VaryByParam = "Id;PersonId;AnotherId")]
此属性允许您针对来自它的Id
,PersonId
,AnotherId
参数的不同值缓存30秒控制器(或操作)输出。
答案 1 :(得分:0)
你可以关注teo van kot的回答。您可以在Globals.asax.cs文件中设置VaryByParam。 IIS 7.5在这里无所谓。
您可以通过这种方式为不同的人缓存不同的内容。
更具体的解决方案是
HttpContext.Cache.Add("latest",data);
使用此HttpContext.Cache存储数据并将其获取到其他http请求中。您可以创建自己的多种条件和机制来将数据存储在HttpContext.cache中,并以您自己的方式使用它。