只有进行重建操作后才会发生更改。

7
我有一个大型的Windows应用程序。
最近,当我对源代码进行任何更改并正常运行项目时,无论是否调试,更改都不会生效。
我尝试重新构建它,一切都很顺利,现在每次对源代码进行更改后,我都必须重新构建项目,然后运行它才能使更改生效。
同时,在重新构建解决方案之前,我无法进行调试。
我的项目附加到源代码控制中心。
非常感谢您的帮助。

1
是的,在你的代码更改生效之前,通常需要重新构建项目。这一点并没有改变,并且在几乎所有编译语言中都是如此。另外,“debi”是什么? - Cody Gray
1
我会认为“debi”是“debug”的意思。 - OJ.
6个回答

11

当在Visual Studio的“当前生成配置”对话框中取消选择项目时,通常会发生这种情况。请检查该对话框以查看您的项目是否被取消选中。我认为您可以通过单击下拉菜单(显示为Debug/Release),然后单击manage/edit来访问该菜单。


您可以通过在解决方案上右键单击并选择“配置管理器”,或在“生成”菜单下查找“配置管理器”来打开该屏幕。 - rsbarro

2
这是一个老问题,但我碰巧面临了类似的挑战。为了有益于可能遇到同样问题的人,以下是我的解决方法。我有一个多项目解决方案,其中一些项目依赖于其他项目的源代码。在放弃并继续重建之前,我决定检查构建依赖项=>项目依赖项(右键单击项目)。我发现有问题的代码来自未包含在依赖项中的类库(未选中)。当我将该项目包含在依赖项中时,我的问题消失了。

1

如果您正在引用另一个项目中的代码所在的 .dll 文件,则即使两个项目位于同一解决方案中,在更改反映之前仍需要构建该项目。不幸的是,这是无法避免的。


如果你在引用 DLL 时,这并不仅是真实的情况。当你在单个项目中对源代码进行更改时,在更改生效之前,你必须重新构建它。 - Cody Gray
我不明白你所说的上下文... 即使按 F5,代码显然也是重新构建的,那么根本不会出现完全没有建立的情况。我所说的是为了构建一个项目,但由于另一个项目 project2 没有被专门构建,因此无法看到它的更改... 但是你可以构建整个解决方案。 - Shekhar_Pro
如果你关闭它,那么就不行了。完全可以按F5键,让Visual Studio启动上次构建的可执行文件,而不是构建新的可执行文件。从问题中无法确定具体情况,但是不能仅仅假设“重新构建”不等于“重新构建”。 - Cody Gray
是的,这种情况下,楼主需要澄清一些事情。 :) - Shekhar_Pro
亲爱的,感谢您的帮助,我正在更改我的项目设置。我意识到最近将构建过程的目标平台更改为任何 CPU,我将其改回为 x86,一切都恢复正常了。您认为这可能是问题所在吗?我没有看到这两件事之间的联系。 - Maen
这很奇怪,因为我不知道这个设置和你的问题之间有任何连接。 - Shekhar_Pro

0

前往您的配置管理器,确保为您的项目选择了构建复选框。

您可以尝试的另一件事是: 转到工具 > 选项 >> 弹出一个窗口 > 在“项目和解决方案”下选择“构建和运行”

确保构建之前设置为保存所有更改。

(摘自https://dev59.com/6I_ea4cB1Zd3GeqPP4wm#32820701amit dayama的回答)


0

我曾经面临过同样的问题,因为我对项目名称进行了一些不安全的修改,并在解决方案中使用了查找/替换功能。这导致在Android清单文件中出现了隐藏的异常,准确地说是在包名称处。

  • 为了避免所有类型的头痛,我创建了一个新的空白项目,具有所需的名称和命名空间,然后移动了功能文件、资源文件,然后修改了静态文件,如清单等。

  • 永远不要使用不安全的方法来配置和修改项目数据


0
我遇到了同样的问题。Winforms应用程序项目设置为x86,依赖类库(在同一个解决方案中)也是x86,然后改为“Any CPU”,并且需要手动重新构建。
在应用程序项目(我正在手动重新构建的那个项目)中,转到>属性>生成>设置为“Any CPU”(与依赖项完全相同的构建)。
问题已解决。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接