由于整个团队已升级到Visual Studio 2015,因此调试器不再中断JavaScript中未处理的异常。然而,4台机器中的1台工作正常,我们猜测这是因为它在IE10上,而我们其余的都在IE11上。
无论如何,要涵盖明显的东西:
所有设备之间的所有设置都相同,包括 JavaScript中的mycode.default.wwa.json> JustMyCode文件夹中 Visual Studio 2015安装目录
新“例外设置”窗口中的默认设置与 2012年旧模态窗口中的例外设置
因此,为了重现这个问题,我们只需在外部JS文件中编写任何旧的狡猾代码(注意页面本身的脚本块被正确捕获):
ViewModel.js:
function something() {
foo();
}
something();
启用JustMyCode时,调试器不会将foo()作为未处理的异常捕获。一旦JustMyCode被禁用,异常将被捕获。所以,是的,我们可以解决这个问题,但一旦禁用,我们就会失去实际的.Net调试。
有没有人遇到过这个问题和/或找到了解决方案?我已经尝试将* .js添加到mycode.default.wwa.json文件中的MyCode部分,我也logged a bug on Connect,但我不希望微软就此事快速回答。< / p>
编辑:所以只有在JS文件末尾有一个查询字符串时才会出现这种情况,例如: site.js?V = 1234。如果删除查询字符串,则调试器会捕获异常,就像在Visual Studio 2012中一样。向Microsoft提交了一个新的repro和demo项目。
答案 0 :(得分:0)
我遇到了这个,在我的情况下,它与我的项目设置中的域名有关。修复是为了确保IE中URL的域与项目设置/ Web /启动URL中的域相同。
例如:
IE中的网址:http://www.yourproject.local
项目设置中的启动网址:http://www.yourproject.local
如果这两个域不同,那么Visual Studio对JavaScript异常的处理就会被破坏。
编辑:我刚看到您对查询字符串的编辑。所以这可能与您的问题有关。你能确定域名不匹配吗?