我的工具:

Visual Studio 2012终极+更新

ReSharper v7.1.25.234

我的解决方案构建状态:成功构建

但是当我安装ReSharper和ReSharper代码分析是启用的,我的代码的许多关键字是红色的这个错误:

"无法解析符号XXX"


我的项目>>的另一张照片

ReSharper“不能解决符号”错误到处都是,但我的项目构建过程是成功的,它工作正确。

附加说明:如果我禁用ReSharper代码分析,我的项目将是正常的,但我想使用ReSharper代码分析。


我尝试了ReSharper→Options→General→Clear Cache。但我还是有这个问题!


一个月前,当我卸载Visual Studio 2012 RC并安装VS 2012 RTM时,我得到了这些错误。 我已经卸载并重新安装了ReSharper。但我还有这个问题! 我的解决方案有五个项目>>两个加载项目(主项目+资源项目)和三个卸载项目


我意识到我的Visual Studio也有更大的问题(更多关于堆栈溢出的信息)

我不能添加任何引用到我的项目(甚至在新的解决方案和新项目中) 我不能安装任何包(通过“包管理器控制台”或管理NuGet包) 我不能更新任何包(通过“包管理器控制台”或管理NuGet包)

我(对自己和他人)提出了很多建议

重新抵抗一些DLL文件 使用一些窗口和注册表修复工具 删除ReSharper 修复Visual Studio 和…

但我解不出来。

我在考虑安装一个新的Windows系统。


出了什么问题,我该如何解决?


当前回答

我也遇到过类似的问题。在我的例子中,我的项目路径的长度对于窗口来说太长了(超过248个字符)。

我的解决方案在VS 2017编译好了,但ReSharper找不到参考。有趣的是,即使构建成功,我在错误窗口中也有一个错误:

Severity Code Description Project File Line Suppression State Error MSB3491 Could not write lines to file "obj\Debug\netcoreapp2.1\My.Long.Path.Project.Name.csproj.CoreCompileInputs.cache". The specified path, file name, or both are too long. The fully qualified file name must be less than 260 characters, and the directory name must be less than 248 characters. My.Long.Path.Project.Name C:\Program Files (x86)\Microsoft Visual Studio\Preview\Enterprise\MSBuild\15.0\Bin\Microsoft.Common.CurrentVersion.targets 3430

所以我缩短了项目路径,ReSharper工作正常。

其他回答

我也有这个问题。之前所有的解决方案都对我没有帮助,或者只在很短的时间内起作用。 在我的例子中,问题是我将. net Framework 4.7.2项目连接到一个版本为4.5.2的项目。在我将两个项目更新到4.7.2版本后,问题就解决了。 我认为要解决这个问题,你需要有相同版本的项目。或者将一个较小的版本连接到一个较大的版本,但不是反之亦然,就像我的情况一样。

对我来说,我认为我的解决方案在更改本地Git回购的哪个分支时陷入了一种奇怪的状态。简单地切换到我在问题开始之前的上一个分支,告诉VS重新加载所有文件,然后切换回所需的分支并重新加载再次修复它。

《JetBrains Rider 2021.3.3》也有同样的问题。清理解决方案或重新启动IDE都没有帮助。解决方案是去文件>无效缓存…,确保只有ReSharper缓存被选中,然后单击无效和重新启动。

当我禁用ReSharper时,Visual Studio也给出了同样的错误,即使项目已经成功构建。我解决这个问题的方法是:

从解决方案中删除项目。 右键单击解决方案,添加现有项目,选择项目文件并再次添加它。

执行这些步骤后,Visual Studio中的语法错误消失了,在我再次启用ReSharper后,它也没有错误。

我只是在Visual Studio 2013中的ReSharper 8.2中遇到了同样的问题,并且没有一个常见的解决方案在这里清除缓存,暂停ReSharper或重新安装ReSharper是有效的。

以我为例,我最终是这样解决的……我查看了它无法解析的一个符号,并注意到它位于System.Web.Http.dll中。然后我发现这是在Microsoft.AspNet.WebApi.Core NuGet包中。我使用包管理器控制台尝试卸载该包,当然它告诉我,由于其他依赖关系,它不能卸载。

所以我卸载了包括Microsoft.AspNet.WebApi在内的所有依赖项。核心,然后重新安装每个包再次在相反的顺序。ReSharper在安装时正确地拾取了所有内容,现在看起来很好。