我有一个问题与Visual Studio的c#解决方案。它会显示完全随机的错误,但项目会构建。现在,我有33个有错误的文件,我可以在所有文件中看到红色的弯曲线。
我尝试清理/重新构建解决方案,关闭Visual Studio,甚至重新启动计算机。我可以修改.cs文件,并看到解决方案中的更改。
有人知道为什么会这样吗?
我有一个问题与Visual Studio的c#解决方案。它会显示完全随机的错误,但项目会构建。现在,我有33个有错误的文件,我可以在所有文件中看到红色的弯曲线。
我尝试清理/重新构建解决方案,关闭Visual Studio,甚至重新启动计算机。我可以修改.cs文件,并看到解决方案中的更改。
有人知道为什么会这样吗?
当前回答
对于我的具体案例,它是另一个开发人员合并到主分支中的服务引用。除了语法高亮显示无法解析生成的服务类和源都是红色下划线之外,这是完全正常的。清理、重建、重新启动什么都没有。
我所要做的就是刷新服务引用,而VS设法在幕后将各个部分组合在一起。源代码或生成的文件没有更改。
其他回答
如果你有ReSharper,试着清空ReSharper缓存:
在菜单中,ReSharper > Options > Environment > General > Clear cache
和禁用和重新启用ReSharper:
在菜单中,工具>选项> ReSharper > General > Suspend / Restore
我遇到过这样的问题,智能感知似乎不能识别一个项目的存在(很多“找不到这种类型”,“这个名称空间不存在”等错误)。
在所有引用项目中删除并重新添加项目引用可以解决问题,但是可以通过编辑问题项目的.proj文件来修复潜在的原因。
在“缺失的”project' .csproj文件的顶部附近有一个元素:
<ProjectGuid>{GUID}</ProjectGuid>
在所有引用项目中。csproj文件都是项目引用:
<ProjectReference Include="..\OffendingProject\OffendingProject.csproj">
<Project>{ANOTHER-GUID}</Project>
<Name>Offending Project</Name>
</ProjectReference>
引用的GUID与项目的GUID不匹配。用{ANOTHER-GUID}替换上面的{GUID}解决了这个问题,而不必经过每个引用项目。
对于VS-2017,删除。vs文件夹对我来说很有效。
重新安装Visual Studio
在浪费了几个小时后,我仍然无法修复Visual Studio 2017。然后我安装了Visual Studio 2019 PREVIEW,突然间,IntelliSense再次向我显示stl类的成员(这在Visual Studio 2017中没有)。
所以,我的猜测是Visual Studio本身可能也有问题(可能是缓存目录中的问题或在你的PC上的一般性问题,这与特定的解决方案没有直接关系),可以通过干净完整的重新安装Visual Studio来解决。我知道,这是一个愚蠢的“解决方案”,但在我的情况下,只有一个新的Visual Studio(2019)安装才有效果。
如前所述,在我的案例中,只有STL类受到影响。智能感知不会显示它们的成员,这很奇怪。我想,这可能与预编译头有关。我在某处读到,STL和项目应该在同一个驱动器上,把它们放在同一个驱动器上应该能解决问题。但这些路线都没有成功。
我刚刚遇到这个问题后,恢复了一个git提交,添加文件回到我的项目。
清理和重建项目没有起作用,即使我在每一步之间关闭VS。
最终起作用的方法是将文件重命名为其他文件,然后再将其更改回来。facepalm指: