ReSharper“不能解析符号”;即使在项目构建时

我的工具:

Visual Studio 2012终极+更新

ReSharper v7.1.25.234

# EYZ0 # EYZ1

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

"无法解析符号XXX"

Enter image description here


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

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

Enter image description here

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


我试着 ReSharper→选项一般清除缓存但我还是有这个问题!


  • 一个月前,当我卸载Visual Studio 2012 RC并安装VS 2012 RTM时,我得到了这些错误。

  • 我已经卸载并重新安装了ReSharper。但我还有这个问题!

  • 我的解决方案有五个项目>>两个加载项目(主项目+资源项目)和三个卸载项目


# EYZ0 # EYZ1

  • 我不能添加任何引用到我的项目(甚至在新的解决方案和新项目中)

  • 我不能安装任何包(通过“包管理器控制台”或管理NuGet包)

  • 我不能更新任何包(通过“包管理器控制台”或管理NuGet包)

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

  • 重新抵抗一些DLL文件

  • 使用一些窗口和注册表修复工具

  • 删除ReSharper

  • 修复Visual Studio

  • 和…

但我解不出来。

# EYZ0:(


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

170847 次浏览

当您的解决方案中有相同库的两个不同版本时,会在ReSharper中发生这种情况。例如,项目A引用automapper 1.1版本,项目B引用automapper 1.0版本。

当Visual Studio选择一个要绑定的dll时,它通常会按照预期的方式编译和运行。然而,ReSharper变得非常混乱。对我来说,这应该是一个ReSharper错误,它要求你解决,而不是只是疯了。

更新:

我两天前(在我写这篇文章的第二天)完全巧合地遇到了这个链接,他们说这是由VS API中的一个bug引起的。我尝试了他们推荐的所有方法,甚至暂时都无法解决这个问题:我使用的是Autofac 2.6。我从谷歌下载的。代码,然后交换它为NuGet包版本,它故意拒绝看到新的引用,无论我做什么。

他们建议安装R# 8 eap,但对我来说,降级到旧版本的Autofac更方便。

帮不上什么忙,但也许有用。

尝试Visual Studio→菜单工具选项ReSharper暂停按钮和重新开始再次(不需要关闭窗口)。这对我来说是可行的。

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

我也有类似的问题,并清除了在以下地方发现的缓存:

AppData \当地\ JetBrains \ ReSharper \ v7.1 \ SolutionCaches

为我解决了问题

运行VS2012 u3

我使用的是7.1,这对我来说是有效的:

  1. 卸载resharper
  2. 转到%appdata%,删除JetBrains\Resharper和..当地\ \ JetBrains \ Resharper文件夹
  3. 重新安装resharper
VS -> Tools -> Options -> ReSharper Suspend button
Clear Contents of -> AppData\Local\JetBrains\ReSharper\v7.1\SolutionCaches
VS -> Tools -> Options -> ReSharper Resume  button

这适用于我(VS2012u4, r# 7.1.3):

  1. Resharper >选项>环境:一般>清除缓存
  2. 重启Visual Studio

我有同样的问题,卸载和重新加载有问题的项目帮助我清除了ReSharper这个问题。希望这能有所帮助。

上面的链接清除缓存和/或暂停ReSharper没有为我工作。我只是从解决方案资源管理器中“刷新”了显示这个问题的项目,问题就消失了。可悲的是,它不断重复,唯一的选择是每次这个问题再次出现时都保持刷新。

我在Windows 8上使用了带有ReSharper 8.1的VS2012

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

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

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

我们也看到了这个问题,具体到多个项目的共享文件。在编辑器窗口的左上角有一个组合框,允许您切换文件的项目上下文(以及影响符号解析的引用)。

Resharper很容易通过“转到文件或符号”命令意外地打开错误的共享文件“版本”。

将上下文切换回我在解决方案中使用的项目是修复此问题所需要做的全部工作。

我测试了所有的其他答案在这一页(在写下这个答案之前),如:

  1. < p > VS→工具→选项→重新锐利暂停按钮和重新开始

  2. < p > # EYZ0

  3. < p >等

但不幸的是,没有一个能解决我的问题。也许我的问题比你的复杂。我在我的编辑问题中说过他们,然后下面的答案是正确的解决方案对我来说,但也许其他答案可以解决你的问题。请先测试一下。

我是被迫的重新安装我的操作系统,并使用更新版本的工具。:(

现在我使用VS 2013 + r# v8,当我的resharper有任何问题时,我只是尝试下面的指令和它解决了我的问题:

VS→工具→选项→暂停按钮和恢复

我做了上面所有的事情都没有解决。

然后我做了一个步骤从另一个SO Q/ a(不记得哪一个),这是设置System.Web.Mvc复制本地真。重新编译我的项目,错误就消失了。

当我将这个程序集设置为本地复制false时,错误没有返回。

我在ReSharper中也看到了类似的问题,但没有导致编译/运行时错误。

这主要是在使用"{x:Type ...}""{x:Static ...}"标记时出现的,导致ReSharper报告"Cannot resolve symbol 'Type'""Cannot resolve symbol 'Static'"错误。

此外,还有许多错误,如"Invalid markup extension type: expected type is '<type>', actual type is '...Extension'"

当我向System.Xaml程序集添加引用时,问题自行解决了。

清除Resharper cache: Resharper -> Options -> General ->清除cache,关闭并重新打开解决方案。它可以在r# 9.0更新1中运行

我最终需要请求Resharper清除它的缓存,并通过Windows文件资源管理器手动完成。这最终解决了我的问题。

  1. (正如在这里的许多解决方案中报告的那样)RESHARPER >选项…>环境>常规>清除缓存。
  2. 关闭Visual Studio。
  3. 在Visual Studio 2015 Resharper 10的文件资源管理器中转到以下路径:%localappdata%\JetBrains\Transient\ReSharperPlatformVs14
  4. 删除该文件夹内的所有子文件夹及其内容。
  5. 重新启动Visual Studio,重新加载解决方案,并等待Resharper为解决方案初始化自己。

没有软缓存删除解决方案为我工作,看起来有不同的RS版本之间产生的问题安装了多年。

对我有用的是:

  • Uninstal resharper
  • 删除AppData\Local中的所有JetBrains文件夹 和AppData\Roaming
  • 重新安装resharper

所有的设置都需要重做,但即使有JetBrains团队的帮助,我也找不到更好的解决方案。

我使用VS2015, r# 10。建议的解决方案对我都不起作用。我删除了我的解决方案的bin文件夹的内容,并重新构建了整个解决方案,这似乎已经解决了问题。在删除bin文件夹的内容之前,我尝试过暂停和恢复r#,从r# ->选项->常规设置中清除缓存,并手动删除\AppData\Local\JetBrains\Transient\ReSharperPlatformVs12\v01\SolutionCaches中的内容。希望它能帮助到别人。

这应该是一个与Resharper缓存相关的问题,但据我所知,“清除缓存”功能只在你的缓存在解决方案文件夹中才有效。 要检查,试试这个: Visual Studio > Tools > Options > Resharper > Options

在Resharper Options窗口> Environment > General 检查“存储解决方案缓存”它被设置为“解决方案文件夹”

在解决方案文件夹中,你应该看到一个新文件夹“_ReSharper.Caches”。你应该可以通过按“清除缓存”按钮来清理它,但是(如果这不起作用)你可以通过删除内部文件来手动清理(在这种情况下,Visual Studio已经关闭了)。

重新启动Visual Studio,一切都应该工作。 看看这里[1]以及

[1] # EYZ0

注意:Visual Studio 2015 Update 1 / ReSharper 10.0.2

我在使用Resharper Ultimate的Visual Studio 2015中遇到了同样的问题,并尝试了上面建议的解决方案,但没有一个对我有效。

然后升级Resharper到最新版本解决了我的问题。

就我的情况而言,我尝试了上面所有的建议。 但是,在某种程度上,我意识到即使Resharper暂停,问题仍然存在。 所以,我在VS本身中寻找了类似的问题,并在这篇SO文章中接受答案的评论中找到了解决方案

为了简洁起见,我列出了我的步骤。

  1. VS -> Tools -> Options -> ReSharper Suspend按钮
  2. 构建解决方案。注意,所有引用仍未解决
  3. 清洗溶液
  4. 重新启动和
  5. 在没有Resharper的情况下构建解决方案。注意所有引用都已解析
  6. VS -> Tools -> Options -> ReSharper Resume按钮

对我来说,检查解决方案给了我数百个错误,包括许多“无法在搜索路径中找到文件”。我试过了所有的方法都没用。我最终发现,检查项目,而不是解决方案,工作得很完美。

对于我来说,VS2015,我不得不更新Resharper到版本2016.2.2来解决这个问题。

我已经试过了(没有一个对我有效):

  • 暂停/恢复
  • 暂停/清除缓存(使用工具>选项按钮)/恢复
  • 暂停/清除缓存(使用Windows文件系统)/恢复
  • 移动缓存到解决方案文件夹/重新启动visual studio
  • 以上所有或部分的许多其他组合

我希望这能帮助到一些人。

我在使用Visual Studio 2015和ReSharper Ultimate 10.0.2时就遇到了这种情况。在回答这个问题之前,我尝试了几乎所有的解决方案(除了重新安装),但都不起作用。

我让它再次以< em >非常< / em >特定的顺序使用上述各种步骤:

  1. ReSharper→Options→Environment→General→Clear cache
    • 这必须做之前暂停ReSharper,否则这个选项不可用
    • 这将清除C:\Users\YourUsername\AppData\Local\JetBrains\Transient\ReSharperPlatformVs14\v04中的文件,正如在其他一些帖子中提到的那样
    • 李< / ul > < / >
    • 工具→选项→ReSharper Ultimate→Suspend
    • 关闭Visual Studio
      • 这实际上执行ReSharper缓存清除
      • 李< / ul > < / >
      • Open Visual Studio
      • 打开溶液
        • 我等待Visual Studio检测到IntelliSense中没有代码问题,并可能在此时执行了构建。
        • 李< / ul > < / >
        • 工具→选项→ReSharper Ultimate→Resume

希望在最后一步之后,你可以松一口气,你不需要重新安装任何东西,我当然做了!

我只是想报告我的解决方案,以防有人和我有类似的情况。我有visual studio2013更新5和ReSharper 8.2.3。我的项目是ASP。Net MVC 5。

通常,我很擅长不断更新我的扩展包。就在最近,我发现我所有的视图都是红色的,并显示“无法解析视图xxxx”。我尝试了清除缓存和暂停ReSharper和恢复ReSharper解决方案,但错误会回来一旦我建立项目。

我检查了我的ReSharper扩展,然后卸载了ReSharper。ExternalAnnotations包(8.2.3005)并从图库(8.2.3000.5176)重新安装以前的版本。 这似乎解决了我的问题。< /强> < / p >

以上这些方法我都试过很多次了,但是没有一个对我有效。我使用的是Visual Studio 2015和ReSharper 9.0。

我通过升级到ReSharper 9.2解决了这个问题。如果你已经对你的主版本进行了最新更新,也许重新安装ReSharper可以解决这个问题。我建议先清空你的ReShaper缓存,以防万一。

以下是ReSharper存档版本的链接: # EYZ0 < / p >

对于我来说,上面的几个建议并没有帮助我:

  • 删除了一个项目引用(ReSharper声称不能找到它的库之一,即使它被正确引用)。
  • 使用ReSharper的“Resolve”在它的一个用法上再次添加引用。

在那之后,它工作得很好,尽管在这个过程中没有修改任何项目文件。

Resharper ->选项 缓存->将解决方案缓存存储在:(将文件夹更改为另一个文件夹)

或者尝试手动清理r#缓存文件夹

我也有同样的问题(VS 2017)。在我的例子中,它是不同版本的目标框架——一个程序集的目标是4.52,另一个是4.62——在两个程序集中设置为相同的版本后,它又开始工作了。

我也有同样的问题。清理Resharper缓存和暂停Resharper不为我工作。我只是关闭visual studio,卸载Resharper,然后再安装Resharper,问题就解决了。

我引用了一个没有被r#识别的NetStandard2.0项目。 我清理了缓存,但这并没有帮助我。< / p >

下载最新版本,为我更新r# 所做的工作

这是我现在运行的版本:

JetBrains ReSharper Ultimate 2017.3.2  Build 111.0.20180201.63358
ReSharper 2017.3.20180201.111630

只需# eyz0r#,它就会识别已经安装的版本。更新到最新版本非常容易。

正如你所看到的,解决方案是每个人都已经提到的-简单地通过暂停 ReSharper,然后是清除缓存,最后是恢复它。但是,没有人提到如何在不关闭/重新启动Visual Studio的情况下做到这一点。

只要遵循这些步骤:

  1. < p > # EYZ0

    • 手动通过去ReSharper Options >环境比;一般比;将解决方案缓存存储在(组合框)(在图像中标记为2)。选择自定义文件夹,然后从显示的文本框中选择缓存文件夹的位置复制(在图像中标记为3.)。返回设置。标记的1表示ClearCache按钮。这通常是行不通的,所以还是算了吧。 李# EYZ0 < / >
  2. < p > # EYZ0

    • 你可以通过Tools >选择比;ReSharper或ReSharper终极>立即暂停(按钮) 李# EYZ0 < / >
  3. < p > # EYZ0

    • 转到前面在步骤1中复制的位置,并删除该文件夹中的所有内容。是的,我指的是一切。
  4. < p > # EYZ0

    • 您可以通过再次转到Tools >选择比;ReSharper或ReSharper终极># EYZ0

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

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

< p > <代码> 严重性代码描述项目文件行抑制状态 MSB3491无法写入文件“obj\Debug\netcoreapp2.1\ my . long . path . project . name .csproj. corecompileinput .cache”。指定的路径、文件名或两者都太长。完全限定文件名必须小于260个字符,目录名必须小于248个字符。My.Long.Path.Project.Name C:\Program Files (x86)\Microsoft Visual Studio\Preview\Enterprise\MSBuild\15.0\Bin\Microsoft.Common.CurrentVersion。目标3430 < /代码> < / p >

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

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

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

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

我有同样的问题,项目编译良好(即使在清洁&构建),但是智能感知会抱怨缺少引用。

我尝试了从删除缓存到禁用锐化器的所有方法,但都不起作用。最后,我意识到只有一个项目引用显示了智能感知错误。

我的解决方案是简单地删除对这个项目的引用,然后再次添加它。

这通常发生在配置文件损坏或错误检测。 只需删除。vs文件夹,重启VS重置配置。它几乎在

的情况下工作

enter image description here

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

在Rider 2020.3中,我只做了一个Build >干净,然后就成功了。

缓存清理对我来说都没用。所有的符号在任何我们的私有NuGet repros只是停止拾取r#启用,非常令人沮丧。 在切换并重新启动VS2019后,我从JetBrains支持那里得到了以下反馈:

关闭以下选项- ReSharper | Options | Environment | General |直接读取解决方案模型

《JetBrains Rider 2021.3.3》也有同样的问题。清理解决方案或重新启动IDE都没有帮助。解决方案是File > Invalidate Caches...,确保只有ReSharper Caches被选中,然后单击Invalidate and Restart