【问题标题】:Visual Studio 2017 not highlighting errorsVisual Studio 2017 未突出显示错误
【发布时间】:2018-03-17 11:38:24
【问题描述】:

我最近从 Visual Studio 2012 升级到 2017(更新到版本 15.3.5)并且 IDE 出现了一些问题。

在某个项目中,我没有得到错误下划线。

在错误列表窗格中,“仅构建”实际上比“构建 + IntelliSense”显示更多信息

此外,选择“Build + IntelliSense”后,我只能在“输出”窗口中看到编译器错误。这是构建失败后的错误列表

但输出窗口有这个:

3>----- 构建开始:项目:...,配置:调试任何 CPU ------
3>C:\Checkout...\MainForm.vb(454,27):错误 BC30311:“Module1.aClass”类型的值无法转换为“Module1.bClass”。

并非所有项目都会发生这种情况。我做了一个新项目,看看我是否可以复制,但我不能。这是一个具有相同代码的新项目,其中错误在代码中带有下划线,并且“Build + IntelliSense”有效。

我什至对 vbproj 文件中的 xml 进行了排序,并“区分”了有问题的项目与新项目,没有明显的区别会导致这种情况。两者都引用相同的编译器。这两个项目都以 .Net 4.6.2 为目标,并设置为仅针对 x86 进行编译。有问题的项目引用了一些其他项目(C# 和 VB.Net)以及第三方 dll 和 nuget 包。除了这些差异之外,别无其他。

违规项目解决方案中的其他项目(C# 和 VB.Net)工作正常。

我在网上看到过类似的问题,但没有对我有用的修复方法。我已经尝试了安装程序中的“修复”选项。然后我卸载了 Visual Studio 并重新安装。

更新:

更改目标框架似乎有一些效果。具有此行为的项目以 4.6.2 为目标并且没有显示错误,当它更改为 4.7 时,它显示编译错误。然后改回4.5显示错误。然后改回 4.6.2 显示没有错误。重复这个过程被证明是不可重复的。 4.7、4.5、4.6、4.6.2 - 不管怎样,现在都没有显示错误。

链接此 Microsoft 页面 https://developercommunity.visualstudio.com/content/problem/7759/no-errors-displayed-in-the-error-list.html 也很重要,因为许多其他人似乎也有类似的问题。

【问题讨论】:

  • 非常奇怪的行为......对我来说似乎是一个错误。您是否在另一台具有相同 VS 版本的计算机上尝试过有问题的项目? -- 如果我是你,我会 write a bug report to Microsoft,将项目附加到它上面。
  • 我在 Visual Studio 2012 中使用您的代码创建了一个新项目,然后使用 Visual Studio 2017 对其进行更新,无法重现此问题。所以这个问题似乎与您的项目更相关,如何在您的解决方案中使用上述代码创建一个新项目,检查它是否工作正常?尝试删除 .vs 文件。
  • 没有复制,但我避免安装更新。特别是 15.3.x 更新产生了很多错误报告,我不敢冒险。有时我们只需要完成我们的工作,而不是测试 Microsoft 产品。使用帮助 > 发送反馈 > 报告问题是报告此类问题的正确途径。
  • @Leo-MSFT 该项目最初是来自第三方的示例项目,项目文件中包含<ProductVersion>9.0.30729</ProductVersion>(Visual Studio 2008?),升级到 2012,然后升级到 2017。
  • @HansPassant 这个问题最初出现在 15.0 上,虽然我在更新到 15.3 之前检查了更改日志并且没有提到对此的修复,但我想我会尝试一下。

标签: vb.net visual-studio visual-studio-2017 roslyn


【解决方案1】:

我已经解决了这个问题,至少在我的解决方案中。

我在玩项目引用,发现当一个特定项目没有被另一个项目引用时,我得到错误下划线。我经历了一个更改框架版本目标的过程,直到某些东西起作用。

我之前的所有项目都针对 .NET 4.6.2。通过在所有项目上定位 4.7,我现在可以在错误窗口中获得正确的错误下划线和报告。

我不确定这是否适合所有人,我需要做一些额外的工作才能将我的项目部署到生产环境,但我可以接受。

我猜这与使用 Visual Studio 2012 的目标 4.6.2 并升级到 2017 有关。如果/当项目升级时,可能某些设置不正确。

【讨论】:

  • 貌似也出现在4.6.1
  • 是的,4.6.1 中也出现了一个奇怪的错误。我有两个项目,其中一个正在引用另一个。突然间,我不再在引用项目中看到错误突出显示。切换 .Net Framework 来解决这个问题!一定要爱微软...
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-10-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-04-01
  • 2017-10-19
  • 1970-01-01
相关资源
最近更新 更多