28

这是一个使用 Hot Towel SPA 模板的 MVC 4 应用程序。每当我更改 HTML 和/或 javascript 中的任何内容时,我可以让新代码显示的唯一方法是清除浏览器缓存。F5,cntrl-F5,shift-F5,没有任何效果。

我通常不是网络开发人员,只是学习这个。我以前做过常规的 MVC 并且没有遇到这个问题,也许它与我的项目中 HTML 和 javascript 的位置(即 /App 文件夹中)有关?我要疯了,试图弄清楚这一点。

我可以完全删除一个 HTML 文件并运行该应用程序,它仍然可以正常运行。清除缓存并运行,然后我得到更新。

它使用 IIS express 使用 Firefox、Chrome、IE 运行...

谢谢..

4

11 回答 11

43

在 Opera 和 Chrome(可能还有其他)中,您可以在“开发模式”下禁用缓存。

在 DevTools 中,设置菜单中的第二个选项是

禁用缓存(在 DevTools 打开时)

于 2015-07-01T04:01:14.507 回答
19

转到您的 web.config 文件并在其中进行更改。无论您进行什么更改。例如键入一个字符然后删除它并构建项目并再次运行它。我希望它可以工作。

于 2013-03-26T20:17:08.433 回答
16

我也遇到了这个问题,结果发现它与缓存有关。

如果使用Chrome DevTools,您可以通过导航到Network选项卡并勾选来简单地禁用缓存Disable Cache

这只会在开发工具打开时禁用缓存。

于 2017-02-22T19:58:34.187 回答
8

ctrl+shift+F5 可以解决问题!似乎浏览器缓存是问题的一部分:)

于 2015-04-16T08:50:19.800 回答
7

在我的情况下,iis express 没有更新站点,但是由 iis Manager 创建的站点工作正常吗?

此问题的可能解决方案是在位于选项-> 项目和解决方案-> Web 项目的 Visual Studio 中设置“使用此 64 位版本的 iis express 用于网站和项目”选项

于 2016-01-21T09:23:40.683 回答
5

浏览器默认缓存。您可以在浏览器中关闭缓存以获取更改的文件。

于 2013-03-26T23:31:40.257 回答
5

我发现我在Chrome Developer Tools -> Sources View中打开了 .js 文件。

当我在那里关闭文件刷新页面时,新的 .js 文件按预期显示。

于 2016-08-26T13:03:02.003 回答
3

我在服务器上移动 .ts 和 .html 文件时遇到问题,必须:

  1. 停止调试
  2. 清除我的 ClientApp 中的整个 output/dist 文件夹
  3. 再次开始调试
  4. Ctrl-F5 强制缓存在浏览器上刷新

简单地禁用浏览器的缓存,或强制 .net 应用程序重新编译,甚至运行 ng serve 都没有效果。

于 2018-11-26T23:46:10.243 回答
2

上面列出的方法都不能始终如一地工作,如果认为任务窗格中使用了不同的浏览器,具体取决于所使用的 Windows 版本/构建,那么您可能必须在每种情况下清除不同浏览器的缓存。

但是,似乎真正的问题不在于浏览器缓存,而在于 VS 决定将哪些文件部署到用于测试/开发的本地 IIS Express 服务器。在许多情况下,当按下“开始”按钮时,即使您还修改了 web.config 文件,修改后的 html 和/或 js 文件也不会进入本地部署。

我始终如一地完成这项工作的方式是选择 Web 应用程序项目(在解决方案资源管理器中),打开属性,单击“打包/发布 Web”选项卡,然后在“要部署的项目”下选择“此项目中的所有文件”。

对我来说很好!

于 2020-06-05T06:47:12.393 回答
1

如果你只是想在本地测试你可以试试

A)创建虚拟目录遵循以下路径:项目/属性/网络
查找服务器部分单击创建虚拟目录

B)遵循以下路径: Project / Properties / Web
Find Servers 部分单击下拉并在 Express 和 Local 之间更改所选值,然后创建虚拟目录

于 2018-11-19T21:28:23.467 回答
0

如果禁用缓存和编辑 web.config 文件不起作用。

只需关闭解决方案并重新打开它并尝试。奇怪,但它对我有用。

于 2017-08-28T06:09:11.563 回答