我想在我的 Web.Config 中为我的 Web 应用程序中不同类型的页面创建多个缓存配置文件。例如,数据形式不经常改变,所以我会增加 Cache-Control max-age。而对于其他页面,会更频繁地向代理服务器或源服务器发出请求,因此 Cache-Control maxage 和 s-maxage 的值将设置不同。
我可以毫无问题地设置最大年龄。但是很难通过在 web.config 上设置 s-maxage 在互联网上寻找解决方案。
<caching>
<outputCacheSettings>
<outputCacheProfiles>
<add name="Cache1Hour" duration="30" varyByParam="none" />
</outputCacheProfiles>
</outputCacheSettings>
</caching>
我最后的手段是手动将 maxage 和 s-maxage 添加到 Action 方法中。
Response.Cache.SetMaxAge(maxAge);
Response.Cache.SetProxyMaxAge(proxyMaxAga);
对最好的方法有什么建议吗?理想情况下,我想使用一个属性来装饰我的 Action 方法。