【问题标题】:"CacheProfile" in MVC 5MVC 5 中的“CacheProfile”
【发布时间】:2014-03-16 18:32:31
【问题描述】:

我是 MVC 的初学者,我有一个项目要从 MVC2 转换到最新版本的 MVC。 我读过一些关于 MVC 4 的书籍,所以我开始了解主要机制。

但是,在转换我的 MVC 2 解决方案时,我遇到了一个属性问题:OutputCache

例如。我有多个这样的操作(属性可能会有所不同):

[OutputCache(CacheProfile = "ProductImage")]
public ActionResult GetImage(Guid elementId, int imgtype)

在 Web.Config 中我有“缓存>outputCacheSettings>outputCacheProfiles>”:

<add name="ProductImage" duration="5" varyByParam="elementId,imgtype" />

并在输出中获得以下异常:

子动作的OutputCacheAttribute 只支持Duration, VaryByCustom 和 VaryByParam 值。请不要设置 CacheProfile, 位置、NoStore、SqlDependency、VaryByContentEncoding 或 子操作的 VaryByHeader 值。

据我了解,问题仅出现在子操作中。

  • 还有其他方法可以在最新的 MVC 中使用缓存配置文件吗?
  • 有没有一种方法可以识别操作是否是子操作以便仅修改该操作?

【问题讨论】:

    标签: .net asp.net-mvc caching asp.net-mvc-5 outputcache


    【解决方案1】:

    解决了安装MvcDonutCaching nuget 并将[OutputCache 替换为[DonutOutputCache...

    请参阅more 关于。

    【讨论】:

    • 这是一个很好的解决方案,我会推荐
    【解决方案2】:

    请阅读答案this question,我相信它很好地回答了你的问题。

    【讨论】:

    • 那里的解决方案对我不起作用,并且还有其他一些开发人员反对它。
    猜你喜欢
    • 1970-01-01
    • 2018-04-23
    • 2014-08-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-08-23
    • 2014-01-18
    相关资源
    最近更新 更多