防止Web缓存抛出异常ASP.NET的方法?

时间:2011-01-18 09:12:47

标签: asp.net security http

我正在尝试使用ASP.NET中的以下代码段来停止对网页的缓存,但它无法正常工作并向我显示以下错误,

Response.CacheControl = "no-store";
Response.AddHeader("Pragma", "no-cache");
Response.Expires = -1;

以下是我得到的例外,

  

例外详情:   System.ArgumentException:属性   CacheControl的值无效。   值=无存储。

MSDN document读取它看起来“no-store”是有效值,但仍然存在此错误。有人可以帮忙解决这个问题。

谢谢,

2 个答案:

答案 0 :(得分:2)

试试这个:

Response.Cache.SetExpires(DateTime.UtcNow.AddMinutes(-1));
Response.Cache.SetCacheability(HttpCacheability.NoCache);
Response.Cache.SetNoStore();

答案 1 :(得分:0)

该帮助页面看起来像是一个asp参考页面,而不是一个asp.net参考页面。

您想要的页面是http://msdn.microsoft.com/en-us/library/system.web.httpresponse.cachecontrol.aspx,表明有效值是与httpcacheability枚举匹配的值。请参见以下页面:

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

特别是你想要的价值,我猜,NoCache。虽然你必须阅读帮助以确保它绝对是你想要的。