我有一个问题与Visual Studio的c#解决方案。它会显示完全随机的错误,但项目会构建。现在,我有33个有错误的文件,我可以在所有文件中看到红色的弯曲线。
我尝试清理/重新构建解决方案,关闭Visual Studio,甚至重新启动计算机。我可以修改.cs文件,并看到解决方案中的更改。
有人知道为什么会这样吗?
我有一个问题与Visual Studio的c#解决方案。它会显示完全随机的错误,但项目会构建。现在,我有33个有错误的文件,我可以在所有文件中看到红色的弯曲线。
我尝试清理/重新构建解决方案,关闭Visual Studio,甚至重新启动计算机。我可以修改.cs文件,并看到解决方案中的更改。
有人知道为什么会这样吗?
当前回答
对于我的具体案例,它是另一个开发人员合并到主分支中的服务引用。除了语法高亮显示无法解析生成的服务类和源都是红色下划线之外,这是完全正常的。清理、重建、重新启动什么都没有。
我所要做的就是刷新服务引用,而VS设法在幕后将各个部分组合在一起。源代码或生成的文件没有更改。
其他回答
偶尔,我不得不做一个自定义清理,通过检查所有的项目,手动删除“bin”和“obj”文件夹。要在Visual Studio中看到它们,您必须为每个项目启用隐藏文件和文件夹。完成此操作后,重新构建解决方案。
我发现,如果被引用的项目的目标是框架的更高版本,而不是试图使用它的项目,就会发生这种情况。你可以通过进入输出窗口并寻找类似的内容来判断这是否是问题所在:
无法解析主引用“my_reference”,因为它 是基于“. net framework,Version=v4.7.2”框架构建的。这 是比当前目标框架更高的版本吗 “.NETFramework, Version = v4.7 "。
解决方案是更改一个或其他项目的目标框架。
遇到这个问题,Visual Studio无法识别单个类型,即使解决方案构建成功,也会显示红色波浪。我注意到在解决方案资源管理器中,文件左边没有显示展开类和属性的展开箭头。
修复是排除该文件从项目和保存/构建产生一个预期的错误,然后包括该文件在项目和保存和构建。
执行这些步骤后,Visual Studio开始再次识别我的类型。看看git中的差异,这个问题似乎是由于<Compile Include="…"的行结束符不匹配造成的。.csproj文件的/>行。
我已经在这个问题上挣扎了一年多,但这些解决方案都帮不了我:
删除.suo 删除。vs文件夹 删除所有缓存/临时文件夹 删除obj / bin文件夹 卸载/重新加载项目
我终于修复了这个问题-我在记事本中打开vbproj/csproj文件,并注意到在ItemGroup部分中,有一个指向我的主项目dll的引用。我删除了这个参考,重新打开了我的解决方案,问题就解决了。
删除。vs文件夹解决了这个问题。
但它也重置了我的解决方案在VS中的当前设置,就像,我在解决方案中卸载的项目被重新加载,当我重新启动VS时,所有固定和打开的文档也被关闭了。