Visual Studio ASP.NET开发服务器不断返回旧页面

时间:2012-09-05 16:11:34

标签: asp.net-mvc visual-studio debugging asp.net-development-serv disable-caching

我创建了一个基于ASP.NET 4的网站。 起初我运行了由Visual Studio ASP.NET 4 Internet应用程序模板生成的默认站点。我刚刚点击Debug按钮,启动了IE,它连接到http://localhost:1341/并加载了我网站的默认欢迎页面。一切似乎都很好,所以我开始重新设计Index.cshtml。

重新设计后,我再次启动了该网站。在浏览时,我注意到如果我单击浏览器的“后退”按钮,我将获得第一页的缓存旧版本,我必须在浏览器中点击“刷新”以获取新版本。

所以我添加了

    <meta http-equiv="PRAGMA" content="NO-CACHE">

    protected void Application_BeginRequest(object sender, EventArgs e)
    {
        // prevent caching
        HttpContext.Current.Response.Cache.SetExpires(DateTime.UtcNow.AddDays(-1));
        HttpContext.Current.Response.Cache.SetValidUntilExpires(false);
        HttpContext.Current.Response.Cache.SetRevalidation(HttpCacheRevalidation.AllCaches);
        HttpContext.Current.Response.Cache.SetCacheability(HttpCacheability.NoCache);
        HttpContext.Current.Response.Cache.SetNoStore();
    }

到我的网站。

然后我使用IE选项清除了IE缓存。我还清理了我的Local \ Temp文件夹。

但是当我在浏览器中按“返回”按钮时,我仍然在IE开发人员工具“网络”选项卡中获得了结果304。

获得新重新设计的页面的唯一方法是使用Cache-&gt;始终从服务器刷新。我可以这样做是为了开发目的,但它只是搞砸了我的想法 - 当我回击时它总是从哪里得到那个非常旧的页面?

调试时,在Visual Studio中,解决方案资源管理器中出现一个新的树项。这个新项目称为脚本文档。在它下面,有一个Windows Internet Explorer项目,其中包含localhost项目......当我打开它时 - 是的,这是当我按下Back按钮时进入IE的旧页面! Visual Studio(或ASP.NET Dev服务器)在哪里存储“localhost”页面?

如何摆脱卡住的页面并阻止IE(或者也许是ASP.Dev服务器)缓存我的localhost /首页?如何删除旧页面?

我希望,新页面不会以同样的方式缓存,因为我添加了它...

0 个答案:

没有答案