我创建了一个aspx页面,并在Firefox中查看它,它运行正常,运行代码。但是当我对页面进行更改(包括删除所有内容并提供空白页面)时,Firefox会继续显示原始编译的aspx页面!如何才能看到新页面?
我甚至添加了以下代码,但它仍然加载了原始页面:
<script runat="server">
Sub Page_Load
Random rd = new Random();
Response.AddHeader("ETag", rd.Next(1111111, 9999999).ToString());
Response.AddHeader("Pragma", "no-cache");
Response.CacheControl = "no-cache";
Response.Cache.SetNoStore();
Response.Expires = -1;
End Sub
</script>
我甚至清除了Firefox的缓存,但它仍然加载了原始版本!
编辑:问题可能出在ASP.Net方面。它在Chrome中也没有变化。那么,如何强制更改aspx文件以强制重新编译?
答案 0 :(得分:0)
我对以下代码感到满意:
// Stop Caching in IE
Response.Cache.SetCacheability(System.Web.HttpCacheability.NoCache);
// Stop Caching in Firefox
Response.Cache.SetNoStore();
此外,在您添加缓存预防代码之前,您的浏览器可能已经缓存了它。如果是这样,请尝试在Firefox中点击CTRL-SHIFT-R强制重新加载而不点击缓存,看看你是否仍然存在Firefox存储页面缓存副本的问题。
答案 1 :(得分:0)
CTRL + F5
如果要构建web application
,则必须重建(在Visual Studio中)您的应用程序以反映您对服务器端所做的任何更改代码 - 这不是“ASP.Net问题”,这是常态。您可以在不重新构建的情况下对HTML(客户端)进行更改,但任何服务器代码更改都需要重建(重新编译dll(s))。
上面的示例代码看起来像in-line
代码 - 是您的所有代码in-line
- 就像您没有code behind
个文件一样(即foo.aspx.vb或者foo.aspx.cs)?
以上所有内容均基于本地开发 - 显然,如果您正在查看“生产”/实时网站,那么不用说您必须“推送”/“发布”/上传/更新,无论您对其进行的本地更改。
答案 2 :(得分:0)
由于看起来问题不是与firefox有关,而是ASP.Net网络服务器中的问题(因为它也发生在Chrome中),我已经提出了一个不同的问题并将关闭这个问题。