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

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

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


当前回答

我发现,如果被引用的项目的目标是框架的更高版本,而不是试图使用它的项目,就会发生这种情况。你可以通过进入输出窗口并寻找类似的内容来判断这是否是问题所在:

无法解析主引用“my_reference”,因为它 是基于“. net framework,Version=v4.7.2”框架构建的。这 是比当前目标框架更高的版本吗 “.NETFramework, Version = v4.7 "。

解决方案是更改一个或其他项目的目标框架。

其他回答

也许你试图重置你的智能感知缓存。在visual studio 2012中,当我在一个有许多部分类定义的大型项目中工作时,我也遇到过类似的问题。 减少局部值部分地解决了问题,同时也清除了智能感知缓存。

我发现在Visual Studio 2017中使用Git时经常发生这种情况,在有依赖代码更改的地方切换分支。即使项目将成功构建,错误列表中仍然会有错误。

这些错误通常是名称空间问题和缺少引用,即使库引用存在。

解决:

关闭Visual Studio 删除{sln-root}.vs\SlnName\v15. txt文件。锁文件(隐藏) 重启Visual Studio

重新安装Visual Studio

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

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

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

在工作中遇到这个问题(运行VS2017)。这里所有的答案都试过了。没有快乐。

该项目构建得很好,但抱怨找不到名称空间/类型。到处都是红色的涂鸦。“错误列表”窗口中出现大量错误。

我的解决方案包含3个项目。

发现其中一个项目的3个NuGet库引用是不正常的。 合并了参考库版本,宾果。

希望这能帮助到一些人。

布雷特。

偶尔,我不得不做一个自定义清理,通过检查所有的项目,手动删除“bin”和“obj”文件夹。要在Visual Studio中看到它们,您必须为每个项目启用隐藏文件和文件夹。完成此操作后,重新构建解决方案。