gpt4 book ai didi

vb.net - Visual Studio 2013 奇怪的编译问题

转载 作者:行者123 更新时间:2023-12-04 10:56:34 25 4
gpt4 key购买 nike

问题

我在使用 Visual Studio 2013 时遇到了一些非常奇怪的编译问题,这确实扰乱了我的团队工作流程。

这个问题很难解释,但我会提供屏幕截图和代码片段来帮助人们理解我们面临的问题。

我们有一个项目,我们最近从 2010 年迁移到 VisualStudio 2013 并将其升级到 .Net 4.5,该项目是一个 ASP.net Web Forms 项目。

代码可以编译和运行,但奇怪的是,当我更改任何类文件时,有时甚至只是添加注释 'Test Comment 它都无法编译。

错误窗口中显示的错误都很奇怪,IntelliSense 在错误的地方显示错误,有些错误甚至完全消失。一个例子是 _To is not defined 在行 Dim _Town as String 或在同一行 'ring' is not defined 这是明显的部分字串

屏幕截图

Here are some of the errors after I added the failing code at line 44 and then commented it out and re-compiled

下面是我在第44行添加失败的代码然后注释掉重新编译后的一些错误 enter image description here

我尝试过的

我尝试更改文件行结尾并确保它们都是 Windows CR+LF,我尝试在构建输出中窥探,但我看不到任何帮助。我什至将解决方案从另一台机器上的源代码管理中下载下来进行测试,但它也有同样的问题。它实际上并没有在新机器上正确编译,但我还不知道这两个问题是否相关。

最佳答案

我遇到了与您相同的问题和相同的情况(我已将一个非常旧的 VB.NET 项目升级到 2013 年的项目)。

问题似乎与文件编码有关。我不知道确切的原因,但它可能有多个具有不同编码的文件(在我的例子中,一些文件是 ANSI,其他文件是带 BOM 的 UTF-8)。

如果您不确定是否有不同编码的文件,请在 Notepad++ 中打开它们。您应该会在右下角看到文件编码。

首先,我将有问题的文件转换为 ANSI 格式,看是否能解决问题。我在 Notepad++ 中打开了有问题的文件,选择了编码-转换为 ANSI,保存,编码-> 在没有 BOM 的 UTF-8 中编码,在 VS 中保存并重新加载文件。现在项目编译成功。

但是,我不想每次更改文件时都这样做(因为 VS 将其转换回 UTF8),因此我将所有旧文件(在我的情况下它们只有 4 个文件)复制到一个临时文件目录,从 VS 中删除文件并创建具有相同名称的新文件,然后我将内容复制/粘贴到每个文件中。现在我所有的文件都是 UTF8,我不再有这个问题。

解决方案是要么将您的文件转换为 ANSI 作为 UTF8,要么将它们转换为 UTF8(这似乎是 Visual Studio 中新创建文件的默认编码,因此我建议将它们转换为 UTF8)

如果您有很多文件,我认为您可以尝试使用 Notepad++ 将它们转换为 UTF8。

问候。

关于vb.net - Visual Studio 2013 奇怪的编译问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31254928/

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