我有一个问题与Visual Studio的c#解决方案。它会显示完全随机的错误,但项目会构建。现在,我有33个有错误的文件,我可以在所有文件中看到红色的弯曲线。
我尝试清理/重新构建解决方案,关闭Visual Studio,甚至重新启动计算机。我可以修改.cs文件,并看到解决方案中的更改。
有人知道为什么会这样吗?
我有一个问题与Visual Studio的c#解决方案。它会显示完全随机的错误,但项目会构建。现在,我有33个有错误的文件,我可以在所有文件中看到红色的弯曲线。
我尝试清理/重新构建解决方案,关闭Visual Studio,甚至重新启动计算机。我可以修改.cs文件,并看到解决方案中的更改。
有人知道为什么会这样吗?
当前回答
我发现,如果被引用的项目的目标是框架的更高版本,而不是试图使用它的项目,就会发生这种情况。你可以通过进入输出窗口并寻找类似的内容来判断这是否是问题所在:
无法解析主引用“my_reference”,因为它 是基于“. net framework,Version=v4.7.2”框架构建的。这 是比当前目标框架更高的版本吗 “.NETFramework, Version = v4.7 "。
解决方案是更改一个或其他项目的目标框架。
其他回答
如果你有ReSharper,试着清空ReSharper缓存:
在菜单中,ReSharper > Options > Environment > General > Clear cache
和禁用和重新启用ReSharper:
在菜单中,工具>选项> ReSharper > General > Suspend / Restore
有时,如果你只是清理解决方案,错误正在消失,但他们最终可能会回来一段时间后或在下一次构建。
在工作中遇到这个问题(运行VS2017)。这里所有的答案都试过了。没有快乐。
该项目构建得很好,但抱怨找不到名称空间/类型。到处都是红色的涂鸦。“错误列表”窗口中出现大量错误。
我的解决方案包含3个项目。
发现其中一个项目的3个NuGet库引用是不正常的。 合并了参考库版本,宾果。
希望这能帮助到一些人。
布雷特。
以下是一些流行的答案。如果答案对你有帮助,给它点赞:
选项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。 然后,右键单击引用>添加引用,选择“微软。单击“确定”
我发现,如果被引用的项目的目标是框架的更高版本,而不是试图使用它的项目,就会发生这种情况。你可以通过进入输出窗口并寻找类似的内容来判断这是否是问题所在:
无法解析主引用“my_reference”,因为它 是基于“. net framework,Version=v4.7.2”框架构建的。这 是比当前目标框架更高的版本吗 “.NETFramework, Version = v4.7 "。
解决方案是更改一个或其他项目的目标框架。