在Visual Studio中调试时,有时我添加了一个断点,但它是空心的,VS说“断点目前不会被击中。”源代码与原始版本不同。”显然,这使我无法进行调试。
这条消息到底是什么意思?什么原始版本?如果我只是打开了解决方案,而没有对代码做任何更改,又怎么会有“原始版本”呢?
在Visual Studio中调试时,有时我添加了一个断点,但它是空心的,VS说“断点目前不会被击中。”源代码与原始版本不同。”显然,这使我无法进行调试。
这条消息到底是什么意思?什么原始版本?如果我只是打开了解决方案,而没有对代码做任何更改,又怎么会有“原始版本”呢?
当前回答
当调试期间或调试会话之间的系统时间发生变化时,可能会发生这种情况,无论是通过编程方式、手动方式还是通过外部程序。
其他回答
在我将现有文件添加到项目后,它碰巧在Visual Studio 2017上。这招对我很管用:
关闭溶液, 转到SolutionFolder\。vs\SolutionName\v15\sqlite3,删除storage.ide 再次打开解决方案
我的问题有点愚蠢。我有两份我的项目副本,我在visual studio中混合文件。
假设你有projectX和projectY。这些项目都包含myFile.cs。我打开projectX并编辑myFile.cs。但是这个myfile。cs属于project。(可以在visual studio中打开来自不同项目的文件)所以在这种情况下,警告说源代码将不同于原始。
对于一个类似的问题,我做了如下处理:
取消选中Debug -> option -> General菜单中的“Enable Just My Code”选项
有时您只需要将解决方案配置从“发布”更改为“调试”。
我遇到了这个问题,这是因为我们的DevOps团队要求Azure云设置。在开发时,只需将其从Web.config中删除。
<httpRuntime maxRequestLength="102400" />
<!--TODO #5 comment out for IIS Express fcnMode goes with httpRunTime above in other environment just in DEV -->
<!--fcnMode="Disabled"/>-->