Visual studio 为什么我总是得到;当前不会命中断点。源代码与原始版本不同;除非我清理和重建?

Visual studio 为什么我总是得到;当前不会命中断点。源代码与原始版本不同;除非我清理和重建?,visual-studio,Visual Studio,如果我更改了代码中的某些内容,我的断点将不再工作。就像VisualStudio编译旧的源代码一样 程序运行时,就像旧代码/更改前的代码一样 然而,清理和重新编译工作有点无聊。每次我更改代码时,我都应该能够获得一个新的.exe 我读到了一个类似的问题 注意,这个问题并不完全相似。基本上,提问者会问如何解决问题。我可以解决这个问题。只需清理项目并再次运行即可。我的问题是为什么这种情况持续发生,以及如何阻止它 一个解决方案是确保如果项目不编译,只运行上一个迭代。我非常肯定这不是问题所在。这是因为我的

如果我更改了代码中的某些内容,我的断点将不再工作。就像VisualStudio编译旧的源代码一样

程序运行时,就像旧代码/更改前的代码一样

然而,清理和重新编译工作有点无聊。每次我更改代码时,我都应该能够获得一个新的.exe

我读到了一个类似的问题

注意,这个问题并不完全相似。基本上,提问者会问如何解决问题。我可以解决这个问题。只需清理项目并再次运行即可。我的问题是为什么这种情况持续发生,以及如何阻止它

一个解决方案是确保如果项目不编译,只运行上一个迭代。我非常肯定这不是问题所在。这是因为我的更改无论如何都会使项目编译。此外,这个屏幕截图可以显示这不是一个问题

一个好的答案可以向我解释这个编译是如何工作的。为什么VisualStudio要编译旧代码?visual studio看不到我做了更改吗?事实上,它以前工作正常。我应该重置所有visual studio设置吗?怎么用?问题是在我的visual studio设置中还是在vbproj文件中


是否存在文本文件(.vb文件)编码不正确的方法。我想这是在我在VisualStudio之外编辑一个文件之后开始的。我不确定。

Per@JoeSewell评论


“在运行中,当项目过时时”,您“从未构建”。 将其更改为“始终生成”

我相信这就是罪魁祸首

我不能肯定。但是,我通过重置VisualStudio设置修复了整个问题

有理由认为“项目过时”是罪魁祸首


似乎有了这个选项,如果我更改了一个代码,那么这个项目就过时了。visual studio没有重建,而是选择不构建新项目,因此我遇到了这个问题。

我发现我引用的是项目中的一个dll(来自另一个项目),该dll已更新,但不在该项目的bin文件夹中。
我通过引用第二个项目而不是dll对其进行排序,因此每次重建它时,都会在其中包含最新的dll。

“在运行时,当项目过期时”,您将“从不生成”。将其更改为“始终生成”。“编译旧代码”不是可能的解释,更可能是“old.exe文件”或“old.pdb文件”。文件系统问题有很多可能的解释,排在最前面的总是反恶意软件。“废话,再次构建,嘿,现在它工作了”的场景是给它更多的时间来执行扫描。做一个排除,如果有效的话,那么赶紧把它处理掉。@JoeSewell你能把它变成一个答案吗。我不确定这是否是问题所在,但重置visual studio设置修复了我的问题。我不知道为什么这个选择会改变。似乎有了这个选项,如果我更改了一个代码,那么这个项目就过时了。VisualStudio没有重建,而是选择不构建新项目,因此我遇到了这个问题。这似乎有道理。如果是这样的话,你能把它变成一个答案吗?我想这就是问题所在。重置vb.net设置后,该设置更改。哎呀。请把它变成一个答案,否则我就自己回答。