C# Visual Studio 2019中的生成错误在错误列表中显示不一致

C# Visual Studio 2019中的生成错误在错误列表中显示不一致,c#,visual-studio,unity3d,C#,Visual Studio,Unity3d,我最近将Visual Studio 2017社区版更新为Visual Studio 2019社区版 现在,如果我构建了带有错误的解决方案,它们将显示在构建输出中,但并非所有这些错误都会显示在错误列表中。似乎只有打开文件的错误才会显示在错误列表中。这真是令人讨厌 在这个问题上,我并不孤单。这在微软的论坛上已经被报道了很多次,但是没有人有一个确定的解决方案 我尝试了人们在这些帖子中提出的各种解决方案: 我已确保过滤器是合法的:整个解决方案、启用错误、构建+智能感知 我已尝试删除.vs文件夹并重新启

我最近将Visual Studio 2017社区版更新为Visual Studio 2019社区版

现在,如果我构建了带有错误的解决方案,它们将显示在构建输出中,但并非所有这些错误都会显示在错误列表中。似乎只有打开文件的错误才会显示在错误列表中。这真是令人讨厌

在这个问题上,我并不孤单。这在微软的论坛上已经被报道了很多次,但是没有人有一个确定的解决方案

我尝试了人们在这些帖子中提出的各种解决方案:

  • 我已确保过滤器是合法的:整个解决方案、启用错误、构建+智能感知
  • 我已尝试删除.vs文件夹并重新启动Visual Studio
  • 我刚刚更新到最新的VisualStudio2019版本。据推测,这个错误有很多不同的版本,早在2017年,Visual Studio的版本中就出现了。有些应该已经修复了
  • 我已禁用并行项目加载
我以前在其他版本的VisualStudio中使用过Razor页面。据我所知,这在《剃刀》中是意料之中的


我非常怀疑的另一个因素是,它是由Unity editor生成的Visual Studio项目。据我所知,ASP.NET、Razor、Xamarin和其他框架都有各自版本的问题报告。也许统一也受到它的影响,但我不知道如何或为什么。我怀疑Unity的自动生成的Visual Studio项目与您的标准库项目有那么大的不同。

我现在已经在两台独立的计算机上安装了Visual Studio 2019,并且“完整解决方案分析”似乎在默认情况下被禁用

只需选中“选项”中的复选框,一切都会像以前一样正常工作:

对于使用Visual Studio 2019 v16.9.1的用户,请确保错误列表窗口如下所示:


对我来说,重要的部分是选择构建+智能感知(以前它被设置为仅构建,这解释了为什么错误列表只会在构建时刷新)。

在我的情况下,解决方案是关闭“工具->选项->项目和解决方案->常规->在构建开始时显示输出窗口”。即使“输出”窗口显示“0成功,1失败”,它也不会切换回“错误列表”窗口,即使上面的复选框“如果生成完成但有错误,则始终显示错误列表”应该将其移动到“错误列表”。很明显,Visual Studio 2019中存在一个错误,Visual Studio 2017中没有出现该错误(我刚刚完成更新)。

您是否单击了
错误列表中的
清除所有筛选器
?是的,但没有任何效果。听起来像是一个错误,您是否向Microsoft报告了此错误?我还没有。考虑到有几个人报告了类似的问题,而且Visual Studio 2019也出现了类似的问题,我希望这是另外一个问题。在Visual Studio 2019中,v16.8.2被破坏到至少v16.9.1,而公认的解决方案不起作用。我必须将构建输出复制到Notepad++中,并手动搜索“error”。如果微软继续“更新”VisualStudio,我们很快就会回到纸笔时代……谢谢!我反复尝试解决这个问题(VisualStudio支持论坛没有帮助),最后偶然发现了这个问题。不幸的是,即使在最新版本(16.7.2)中,启用完整的解决方案分析也会使VS的总体性能急剧下降(例如,在键入和自动完成/建议列表出现或更新之间有一个非常明显的延迟),并且每当错误列表窗口打开并包含多个项目时,VS的整个UI的响应也会突然变慢。在调用该设置的版本16.9.1中,这似乎不起作用“背景分析范围”并设置为“整个解决方案”。此错误将Visual Studio带回手动构建的石器时代,以查看您的代码是否有效:-(我遇到了相反的问题。
Build+Intellisense
只向我显示高级错误,但切换到
Build only
开始向我显示实际的生成错误。他们在VS2019的最新更新中破坏了一些基本的功能…@AlainD VS2019有一些非常微妙的错误/问题(例如,“断点”窗口的滚动条似乎无法正确调整大小以允许滚动断点列表),我希望他们能降低发布频率,因为像Visual Studio这样庞大而重要的产品确实需要坚如磐石。