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

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

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


当前回答

删除隐藏文件路径= your solution\ .vs\ your solution Name \v15\ .suo

其他回答

清理Resharper的缓存在我的情况下没有帮助,尝试暂停/恢复,并修复Resharper,使用JetBrains网站上的最新下载-这些都没有帮助。这是在我尝试关闭/重新打开VS,重新启动我的机器,重复,构建/重建及其组合之后。

有趣的是,在VS第二次重启后,暂停Resharper似乎解决了问题,但在我启用Resharper <之后,问题又回来了——我尝试这样做2-3次以确保模式。

不管怎样,当我发现这篇文章时,我仍然有问题:

快速提示:当Visual Studio崩溃,所有东西都是红色时该怎么办

所以我删除了同一文件夹级别的。suo文件和解决方案,它神奇地解决了所有红色。

注意:对于Visual Studio 2015, . suo文件在.vs/[solution_name]/v14隐藏文件夹中。

以我为例,当我在更新sdk到最新版本后第一次尝试使用c# 9.0编写的项目时,无论我做什么,它都会显示红线(它会构建得很好)。这里的一切我都试过了,但都没用。 最后,我意识到问题出在Resharper的语法高亮笔上。 当我更新Resharper时,所有的红色都消失了。

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

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

和禁用和重新启用ReSharper:

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

我体验过智能感知显示不存在的分散注意力的错误,但仍然能够在Visual Studio 2019中构建和调试项目。此问题在Visual Studio 2017中没有出现。在这个问题上,我们无法导航到Visual Studio中的各种参考。

在尝试了所有发布的选项并找到这篇关于导航符号的文章后:https://stackoverflow.com/a/49100341/999011

我们这种情况的解决方案与Microsoft.Net.Compilers & 项目文件中的Microsoft.CodeDom.Providers.DotNetCompilerPlatform引用,在上面的帖子中提到过。

然而,我从来没有更新过它们,我只是发现在项目文件中有多个对不同版本的引用。在清理完这些文件后,每个包只有一个引用 Microsoft.CodeDom.Providers。DotNetCompilerPlatform,分散注意力的红色涂鸦消失了,导航符号开始工作。

我只能推测,额外的引用是在升级期间添加的,因为我认为这个项目最初是在Visual Studio 2015中创建的。

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

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

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