我有一个问题与Visual Studio的c#解决方案。它会显示完全随机的错误,但项目会构建。现在,我有33个有错误的文件,我可以在所有文件中看到红色的弯曲线。

我尝试清理/重新构建解决方案,关闭Visual Studio,甚至重新启动计算机。我可以修改.cs文件,并看到解决方案中的更改。

有人知道为什么会这样吗?


当前回答

重新安装Visual Studio

在浪费了几个小时后,我仍然无法修复Visual Studio 2017。然后我安装了Visual Studio 2019 PREVIEW,突然间,IntelliSense再次向我显示stl类的成员(这在Visual Studio 2017中没有)。

所以,我的猜测是Visual Studio本身可能也有问题(可能是缓存目录中的问题或在你的PC上的一般性问题,这与特定的解决方案没有直接关系),可以通过干净完整的重新安装Visual Studio来解决。我知道,这是一个愚蠢的“解决方案”,但在我的情况下,只有一个新的Visual Studio(2019)安装才有效果。

如前所述,在我的案例中,只有STL类受到影响。智能感知不会显示它们的成员,这很奇怪。我想,这可能与预编译头有关。我在某处读到,STL和项目应该在同一个驱动器上,把它们放在同一个驱动器上应该能解决问题。但这些路线都没有成功。

其他回答

我在VS2019中的症状是我会构建一些错误。然后修复错误,构建就可以工作了,如Output窗口所示。但是错误窗口仍然显示旧的错误。我可以运行得很好。关闭VS2019并重新打开解决了这个问题,但只是一段时间。这在版本16.4.3开始发生

这个解决方案似乎对我很有效:

取消勾选工具->选项->项目和解决方案->通用->允许并行项目初始化

我发现这个解决办法埋在这里的评论:https://developercommunity.visualstudio.com/content/problem/483450/vs-2019-intellisense-reports-compile-errors-when-r.html

遇到这个问题,Visual Studio无法识别单个类型,即使解决方案构建成功,也会显示红色波浪。我注意到在解决方案资源管理器中,文件左边没有显示展开类和属性的展开箭头。

修复是排除该文件从项目和保存/构建产生一个预期的错误,然后包括该文件在项目和保存和构建。

执行这些步骤后,Visual Studio开始再次识别我的类型。看看git中的差异,这个问题似乎是由于<Compile Include="…"的行结束符不匹配造成的。.csproj文件的/>行。

我已经在这个问题上挣扎了一年多,但这些解决方案都帮不了我:

删除.suo 删除。vs文件夹 删除所有缓存/临时文件夹 删除obj / bin文件夹 卸载/重新加载项目

我终于修复了这个问题-我在记事本中打开vbproj/csproj文件,并注意到在ItemGroup部分中,有一个指向我的主项目dll的引用。我删除了这个参考,重新打开了我的解决方案,问题就解决了。

如果你有ReSharper,试着清空ReSharper缓存:

在菜单中,ReSharper > Options > Environment > General > Clear cache

和禁用和重新启用ReSharper:

在菜单中,工具>选项> ReSharper > General > Suspend / Restore

0 -右键单击解决方案和清洁解决方案

1 -关闭VS

2 -删除项目的.suo文件

3 -开VS

4 -构建解决方案