我正在开发Visual Studio 2013 Ultimate中的一个小型web api项目。 Windows 2013. Internet Explorer 9.当我使用内部Web服务器从VS运行(调试)时(我猜这是IIS Express,现在),我发现我正在进行(并保存)到javascript页面的更改正在进行忽略。在javascript中放置断点会显示较旧的代码而不进行更改。
CTRL + F5不会强制应用程序使用当前更新的页面。检查页面,然后检查它通常有效。是否有一些设置或技巧可以帮助我在这里?
清除缓存历史似乎有点过分,我不想一直这样做。
以下解决方案使我在Internet Explorer中工作:首先启用脚本调试:
然后确保您获得最新页面:
如果有人有这个问题和ctrl + F5,清除浏览器的缓存,重新启动调试,更改浏览器,更改web.config和重建项目没有帮助,那么最后一件事是有效的(至少对我而言):重启Visual Studio 。
同时更改本地IIS Express上的调试端口也有帮助,但如果在团队中工作或使用Azure Active Directory等,这会更加痛苦。
只有对我有用的解决方案是更改javascript文件名并更新捆绑包配置以指向新文件。我尝试了其他一切,包括重新启动我的电脑,删除bin / obj / cache / etc,CTRL F5,重启IIS等等。
如果我是正确的,你应该在调试之前构建(ctrl + shift + b)你的项目。无论何时以调试模式启动,此Web服务器都会在后台运行。如果需要新会话或按VS中的F5,您可以关闭任务(时钟旁边的进程条)。
如果您有IIS(Express)或类似的东西,您可以避免使用内置的Web服务器。转到RUN并输入iis
,具体取决于您已安装的操作系统。否则尝试在Control Panel
> Programs or Features
> Turn windows features on or off
中安装它
127.0.0.1 hostname
(c:\ windows \ system32 \ drivers \ etc \ hosts)要在Visual Studio中调试项目:
根据您的解决方案/项目的设置方式,如果您选择发布到File System
,则可以将项目文件直接发布到IIS。用鼠标右键单击您的项目,然后选择publish
。从那里设置它。
如果Visual Studio是最新的,则可以使用alt+$+p
发布单个文件。
希望能帮助到你。
对我有用的是
我经常经常遇到这个问题。通常我做的是首先进入安装操作系统的驱动器(在我的情况下C:
),并删除所有application.dll
和application.pdb
(它存储在Windows\Microsoft.net\Framework\vx.x.xxxxx\Temporary ASP.NET Files
)。删除application.dll
中的application.pdb
和users\xxx
。进入应用程序目录并再次删除application.dll
和application.pdb
。清除浏览器缓存。重启系统(冷启动)。构建应用程序。大部分时间都在发挥作用。注意:我使用DOS提示进行删除,因为我已经习惯了。但是用户应该具有管理员权限。这不是一个完美的解决方案,但它的工作原理。
找到将JavaScript文件加载到页面的代码部分,并将参数字符串添加到末尾以进行测试。例如:
更改src =“../ Resources / js / MyScriptFile.js”
to src =“../ Resources / js / MyScriptFile.js?v = 23”
每次更新JavaScript文件时,都会更改版本号。这将强制浏览器加载新版本的JavaScript文件。完成测试后,您可以删除字符串“?v = 23”。奖金,如果您将其留在那里,在将代码部署到生产后,最终用户将不需要刷新他/她的浏览器缓存。
所以我有同样的问题,我可以通过取消Visual Studio中的.ASP.NET-Server .ASP.NET-Server from Visual Studio for debugging并重新启动调试来避免这种情况。希望这有助于某人。
我重新启动Visual Studio并重建了项目,但问题仍然存在 - 调试器继续运行.js文件的旧副本。我的解决方案是简单地重启机器。 (当其他一切都失败了......)
作为参考,我目前正在使用Visual Studio 2015。