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

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

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


当前回答

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

其他回答

删除。vs文件夹解决了这个问题。

但它也重置了我的解决方案在VS中的当前设置,就像,我在解决方案中卸载的项目被重新加载,当我重新启动VS时,所有固定和打开的文档也被关闭了。

在我的例子中,帮助了很多事情:

deleting all old not needed files which were previously excluded from the project closing VS deleting all the bin folder contents deleting .vs folder Clean/Rebuild after that I still had some spurious errors, however the amount was significantly lower (from 200 to around 8) and the errors referred only to a resource dictionary path in Generic.xaml e.g. <ResourceDicitonary Source="example/path/somefile.xaml"> when I played around with the path trying to change it to a wrong one re-building then correcting it and rebuilding again, then this finally cleared all errors. It was specifically WPF project if that's relevant.

REM DELETE ALL VS HIDDEN SOLUTION OPTION FILES
DEL /A:H /S *.SUO

我刚刚遇到这个问题后,恢复了一个git提交,添加文件回到我的项目。

清理和重建项目没有起作用,即使我在每一步之间关闭VS。

最终起作用的方法是将文件重命名为其他文件,然后再将其更改回来。facepalm指:

以下是一些流行的答案。如果答案对你有帮助,给它点赞:

选项1:清洁,构建和刷新(@Mike Fuchs选项)

正如@Mike Fuchs提到的,尝试以下操作:

在菜单中,构建>清洁解决方案 和 在菜单中,生成>生成解决方案

选择有问题的项目,然后点击刷新按钮:

选项2:清除,关闭,重新启动和构建(@像素选项)

正如@Pixel提到的,尝试以下操作序列:

清洗溶液 关闭Visual Studio Open Visual Studio 构建解决方案

选项3:清除ReSharper缓存(@GammaOmega选项)

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

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

和禁用和重新启用ReSharper:

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

选项4:删除.suo文件(@Neolisk选项)

正如@Neolisk提到的,删除.suo文件可能会解决你的问题。对于Visual Studio 2015,该文件位于:

[解决路径]/。vs /解决方案名称/发掘/ .suo

对于Visual Studio 2017:

[解决路径]/。vs /解决方案名称/ v15 / .suo

注意,.vs目录是隐藏的。

选项5:卸载和重新加载项目(@TTT选项)

正如@TTT提到的,尝试卸载导致问题的项目:

在解决方案资源管理器中,右键单击项目,卸载项目。

然后重新载入

在解决方案资源管理器中,右键单击项目,重新加载项目。

选项6:删除并添加Microsoft。CSharp参考(@Guilherme选项)

正如@Guilherme所提到的,尝试删除并添加“微软”的引用。从存在问题的项目中。

在“解决方案资源管理器”中展开项目,展开“引用”,右键单击“微软”。CSharp”和Remove。 然后,右键单击引用>添加引用,选择“微软。单击“确定”