gpt4 book ai didi

c# - Visual Studio在编辑器中显示源代码时正在检测错误,并且在生成用于在 Debug模式下执行的代码时未看到任何错误

转载 作者:行者123 更新时间:2023-12-03 07:39:33 24 4
gpt4 key购买 nike

我已经将WinForms应用程序(一个由10个相互依赖的项目组成的相对较大的解决方案)的目标平台从x86更改为x64。这是一个用Comodo证书签名的ClickOnce应用程序;所有程序集也都使用相同的证书签名。一切正常,在 Release模式下没有错误,并且可以产生有效的可分发内容。但是,仅将解决方案配置切换为“调试”,便遇到了许多未定义类型的错误。
找不到类型或 namespace 名称“**”(您是否缺少using指令或程序集引用?)*
显然,Visual Studio无法正确处理一个引用(可能不止一个)。即使删除了bin和obj目录的内容并清理了所有项目,错误仍然保持不变。奇怪的是,我可以在 Debug模式下启动可执行文件并对其进行广泛的测试而没有任何问题。但是,编译器错误仍然存​​在。换句话说,Visual Studio在编辑器中显示源代码时正在检测错误,而在生成用于在 Debug模式下执行的代码时则看不到任何错误。我在另一台计算机上仍然可以使用的原始x86解决方案中不存在该问题。更改配置时似乎出了点问题。更明确地说,我制作了4个屏幕截图,您可以在此处找到:

  • https://www.soascape.com/issues/attachments/INT_001/release.png
  • https://www.soascape.com/issues/attachments/INT_001/debug.png
  • https://www.soascape.com/issues/attachments/INT_001/references.png
  • https://www.soascape.com/issues/attachments/INT_001/FsB-namespace-SoaGui.png

  • 从x86迁移到x64时我错过了什么吗?我正在使用VS Community 2019版本16.7.7。

    最佳答案

    看来您已经在主项目中引用了几个项目。
    作为建议,您应该使每个项目的配置x64,而配置Debug
    换句话说,,您必须确保已经在每个引用的项目上构建了与主项目相同的配置平台
    我的第一个想法是,您引用的项目不是使用构建的。调试并没有与主项目保持相同的配置和平台。因此,带有Debug|x64的主项目无法找到相应的输出文件Debug|x64(这意味着您引用的项目没有这样的文件夹),因此会发生此问题。
    在我的内存中,仅当Configuration和Platform与主项目相同时才可以使用引用项目的dll。如果它们不同,则不能永远使用它们。并确保引用的项目与主项目具有相同的输出文件夹。
    例如对于,如果您使用Debug|x64构建了 Reconciler 项目,则应确保引用的项目具有Debug|x64模式的输出文件夹。
    如果没有帮助,请遵循以下建议:
    建议
    1)关闭VS,删除每个项目的每个解决方案文件夹下的.vsbinobj文件夹。
    enter image description here
    2)打开每个引用的项目->使用Debug|x64模式构建项目。
    3)完成后,重新打开协调器项目,但Debug|x64看不到此类问题。
    除了之外,如果您引用的项目是lib项目,则可以直接引用dll而不是项目。

    关于c# - Visual Studio在编辑器中显示源代码时正在检测错误,并且在生成用于在 Debug模式下执行的代码时未看到任何错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64716186/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com