【问题标题】:ASP.NET Razor views are not updating when simply updating html仅更新 html 时,ASP.NET Razor 视图不会更新
【发布时间】:2014-09-10 21:17:35
【问题描述】:

仅更新 html 时,ASP.NET Razor 视图不会更新。当我的应用程序在调试模式下运行时,我试图在页面上添加一些元素,并且当我刷新页面时在浏览器中看不到更改。但是,如果我停止并重新启动应用程序,就会看到更改。

我试过禁用缓存,发回标头(pragma no-cache),在浏览器上重新加载,似乎没有任何效果。

不得不不断地弹出应用程序,这非常令人沮丧。

我正在使用:asp.net 4.5、IISExpress、Visual Studio 2013。

有谁知道如何关闭输出缓存,这样我就可以在无需重新启动整个应用程序的情况下进行调试?

谢谢

【问题讨论】:

  • 默认的 asp.net mvc 应用不应该发生这种情况,尤其是在 Visual Studio 中运行。您是否以任何方式弄乱了标题?检查你的布局视图,它是否有任何可能缓存请求的元标记?
  • Ctrl-F5 不起作用我已经尝试了 Marko 的建议。它不起作用。我还尝试在 web.config 中禁用缓存。似乎没有任何效果。更诡异的是,另外一个不使用 Razor 的应用,在添加标记和刷新的时候也能正常工作。
  • @mxmissle,检查了布局视图,没有元标记,我也发回了 pragma no cache。它仍然坚持缓存页面

标签: c# asp.net asp.net-mvc asp.net-mvc-4 razor


【解决方案1】:

截至 2019 年 9 月,Visual Studio 中存在一个错误,该错误会阻止 Razor 视图更新,除非您在每次更新后重新启动服务器。很烦人!

修复:

1- 添加 NuGet 包 Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation

2- 修改startup.cs中的ConfigureServices方法

替换

 services.AddControllersWithViews();

 services.AddControllersWithViews().AddRazorRuntimeCompilation();

【讨论】:

  • 问题中描述的问题不是针对 ASP.NET Core,而是针对 ASP.NET。 What I'm using: asp.net 4.5, IISExpress, visual studio 2013.
  • 看准男人!使用 Net core 为我节省了大量时间。谢谢。不得不说,这个问题同样适用于VS 2019的16.3.10版本。
  • 问题清楚地说明了它适用于 Visual Studio 2013。
【解决方案2】:

尝试在网页上按 CTRL+F5。您的浏览器可能会缓存旧文件。

查看这个问题了解更多详情:Get rid of [dynamic] JavaScript views in Visual Studio

【讨论】:

  • 您也可以尝试关闭所有浏览器选项卡,然后启动调试器。以防万一您的缓存由于某种原因没有被清除
  • 缓存不是这里的问题,因为在问题中,据说缓存已经被禁用。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2019-05-06
  • 2019-04-22
  • 2021-12-21
  • 2013-05-26
  • 1970-01-01
  • 1970-01-01
  • 2019-07-04
相关资源
最近更新 更多