3

在任何事情之前,我首先要说一个小时以来我一直在到处寻找解决这个问题的方法。那里有许多相同的问题,但没有一个解决方案可以帮助我。

我正在尝试调试一个小项目。当我开始从事这个项目时,我可以在任何我想要的地方放置断点,然后我会击中它们。但是由于某种原因,现在当我在主程序之外放置断点时(例如,在类定义中),断点在代码运行时空洞,并且我收到一条消息说源代码与原始版本不同。

这让我相信它正在运行以前的构建,所以我做了一个明显的改变,让代码输出一些随机字母“dajfhdjhfds”;

F7照常打。有消息说Build: 1 succeeded。点击F5,程序运行但不显示随机字母。

我清理我的解决方案,然后构建并显示更改。我“重建”了解决方案,并显示了更改。断点也有效。

但是,如果我进行进一步的更改,断点将停止工作,并且更改不会出现在程序中。Visual Studio 始终运行旧代码。我不想每次要调试新代码时都必须清理我的解决方案。

我已经重置了我的设置,我在配置管理器中检查了“构建”,我什至开始了一个全新的项目并将我的代码复制到新文件中。同样的问题。

4

3 回答 3

2

问题在于我将代码从原始项目复制到保存在其他地方的全新项目中。当我尝试在新位置构建项目时,它总是会在旧位置构建它(奇怪,因为我将代码直接复制到全新的文件中)。

当我尝试运行文件时,它会在新位置查找构建的代码。因此,它总是会过时的代码。

可以通过将新代码放回旧位置来解决问题!

感谢大家

于 2013-07-18T17:40:57.817 回答
2

我也有这个问题,使用 WinForms。我正在添加消息框来测试代码,但什么也没发生,只有预先存在的消息框有效。我不确定“确切”是如何修复它的,但是在单击“构建”菜单下的“构建解决方案”、“重建解决方案”、“清洁解决方案”和“构建(程序名称)”后,问题就消失了。与之前的问题不同,我没有在解决方案之间复制+粘贴任何代码。

于 2014-12-21T03:03:34.257 回答
1

我已经开始遇到一个相同的问题,我认为这一切都是在我以新名称重新创建项目时开始的。也就是说,我必须复制所有内容。问题是我不知道什么没有被完全复制,现在负责要求重建以获取我的代码更改。在文本编辑器中检查了解决方案和项目文件,没有旧文件夹结构的迹象。

于 2013-08-26T19:36:58.903 回答