覆盖web.config设置

时间:2011-10-31 06:56:32

标签: asp.net cache-control

环境:IIS 7,.Net 4.0

在我们的应用程序的web.config中,它有以下部分:

<system.webServer>
  <httpProtocol>
   <customHeaders>
     <add name="cache-control" value="no-cache" />
   </customHeaders>
  </httpProtocol>
</system.webServer>

我们的大多数应用程序都需要no-cache,但只有一个页面要求缓存控制为Private。是一种方法吗?

赞赏任何输入

2 个答案:

答案 0 :(得分:1)

您无法将web.config中的设置应用或覆盖到特定页面,但您可以通过以下设置对文件夹内的所有页面执行此操作。

<system.webServer>
  <httpProtocol>
   <customHeaders>
     <remove name="cache-control" />
     <add name="cache-control" value="no-cache" />
   </customHeaders>
  </httpProtocol>
</system.webServer>

但是,您可以覆盖特定网页cache-control事件中的Page_Load设置。

Response.CacheControl = "Private";

答案 1 :(得分:0)

您还可以通过设置@outputcache指令的location属性来更改页面的响应缓存。

<%@ OutputCache Location="Server" %>