如何使ReSharper重新评估其装配参考突出显示


184

我正在创建一个棱镜项目模板,该模板效果很好。但是,在使用模板创建一个项目后,其中一些文件如下所示:

错误的参考

尽管出现了,但一切都很好。

如果执行全部重建,则可以看到该解决方案的构建没有错误:

重修

但是,所有重建操作都无法消除编辑器窗口中显示的“错误”。(请注意,实际错误窗口不会显示任何错误。)

我可以清理,重建,关闭和打开文件,但不能解决突出显示问题。

但是,如果我关闭解决方案并重新打开它,一切都很好

重新加载后工作

我的问题:

理想情况下,我的模板或IWizard可以通过某种方式告诉ReSharper重新加载突出显示的引用。

我知道我可以先关闭ReSharper 然后再打开,这样可以解决问题,但是我不愿意这样做。

是否有一个ReSharper命令可以刷新此内容?


您在使用ReSharper吗?
约翰·桑德斯

@JohnSaunders-是的,5.1
Vaccano 2012年

我已经看到ReSharper这样做了,所以它可能是ReSharper的错误,而不是VS的错误。我最近在6.1版中看到了这一点。
约翰·桑德斯

@JohnSaunders-我确认这是ReSharper问题。我编辑了问题,以将其重新定位到ReSharper。感谢您指出正确的方向!
瓦卡诺

您在项目中使用什么版本的Prism,WPF / SL / WinPhone?
朱拉·格罗霍夫斯基

Answers:


216

除重新安装外,成功清除缓存的唯一方法是从AppData目录中手动删除文件。

在以下位置删除使您感到悲伤的解决方案文件夹:

  • %LOCALAPPDATA%\JetBrains\ReSharper\v7.1\SolutionCaches\
  • %LOCALAPPDATA%\JetBrains\Transient\ReSharperPlatformVsXX\vXX\SolutionCaches\ 对于较新的版本。

请注意,路径中的版本号可能会有所不同,具体取决于所安装的ReSharper版本。

XXvXXVsXX表示任何数量的,因为有可能是在解决方案缓存存储多个文件夹。


8
根据您的缓存配置,此路径可能有所不同。(请参阅Resharper> Options> General)
无名,2013年

1
足够公平-但它绝对可以解决您面临的问题(而不仅仅是您...)
Peter Munnings 2013年

2
答案是正确的。关闭所有Visual Studio实例,删除%LOCALAPPDATA%\ JetBrains \ ReSharper \ [installed_version] \ SolutionCaches。
侯曼2014年

3
@Joel在ReSharper的9,引进ReSharper的平台,它被移动到%localappdata%\JetBrains\Transient\ReSharperPlatformVs12\v01\SolutionCaches(如@brgerner 提到,您可能需要点击清除缓存前,走这条路的第一个按钮)
bdukes

7
您可以使用Resharper-> General-> Clear Caches清除缓存,无论您的缓存位置如何。您将需要在清除缓存后重新启动Visual Studio
Christopher Haws

98

尝试卸载,然后重新加载项目。

要卸载项目,请在解决方案资源管理器中右键单击该项目,然后选择Unload Project。然后,再次右键单击该项目,然后选择Reload Project

使用最新版本的ReSharper有时仍然会出现此问题,但该修复程序似乎适用于每个版本。


看起来重新加载会导致重新共享器重新扫描。对我来说,这比在文件资源管理器中寻找缓存要容易得多。
testpattern 2015年

69

您可以尝试通过菜单ReSharper选项环境/常规 →按钮来清除ReSharper缓存Clear Caches


1
las,它仍然没有解决它。
瓦卡诺

23
之后,您需要重新启动Visual Studio。然后它将起作用。
Felix C

3
即使重新启动Visual Studio,它也对我不起作用。但是谢谢。
马特

在降级nuget软件包然后再次升级之后发生了我。使用此提示进行修复。
Guillaume Perrot

如果关闭Visual Studio,然后再执行msbuild yourSolution.sln / t:clean,然后清理所有重新共享缓存,保存并重新打开解决方案,则效果最佳。
约翰·菲利普

14

这对我有用。无需重新加载项目。您可以在Visual Studio中执行此操作。

  1. 通过ReSharperOptionsGeneral清除ReSharper缓存,单击“ 清除缓存 ”。

    翻土机选项

    重新共享清除缓存

  2. ReSharperWindows,选择“ 解决方案错误 ”。这将启动“解决方案错误”窗口。在此窗口的顶部,单击按钮以' 重新分析有错误/警告文件 '。

    ResharperWindows

    重新分析有错误的文件


1
使用R#10.0.2,而不必重新启动VS。
Seb T.

1
这对我
有用

6

打开ReSharper的 - 选项 - 环境 - 通用,向下滚动到MSBuild的访问,并选择在每次编译后获得的MSBuild数据

这对我有用,将ReSharper 10.0.1与ReSharper Build一起使用。


我还清理了解决方案并重建它。然后,我可以在工作时切换回以前的Msbuild访问
znn

5

转到ReSharper→ Windows解决方案错误窗口,您将获得解决方案中错误的概述。在那里,您可以单击按钮Reanalyze Files With Errors

如果需要,可以为此指定一个快捷方式。转到工具选项键盘,然后搜索“重新分析”。您可以将键盘快捷方式分配给'ReSharper_ErrorsView_ReanalyzeAllFiles'或'ReSharper_ErrorsView_ReanalyzeFilesWithErrors'。


1
我面临类似的问题,并且无法解决。
Tilak 2012年

我也很累 它没有解决问题。Resharper仍然标记了错误,但是都编译良好。卸载和重新加载项目是我能找到的唯一解决方法。(尽管有人告诉我它是在最新版本的
Resharper中修复的

很有用!我在VS 2019和Resharper 2019.3中遇到了相同的问题,但实际上这不是问题。项目构建的事实不一定意味着Resharper不会发现错误。就我而言,我的NUnit项目中的某些xml测试文件中存在一些错误。此解决方案很快找到了文件
shelbypereira

3

我对nuget软件包有类似的问题,但发现了一个最奇怪的解决方法:在项目引用列表中选择引用,然后按“ F4”。属性窗口的外观以某种方式导致重新共享重新评估可用的参考。


1
我对所有“干净的缓存”技巧都不满意。然后我尝试了一下,它几乎有帮助。我的解决方法是:找到有问题的项目-打开引用-选择R#标记为未知的引用-按F4键-更改属性中的某些内容,例如“将本地从true复制为false,然后恢复为true”
Chrigl

我有类似的解决方法。我实际上必须从项目中删除引用,然后重新添加它。没有其他解决方案对我有用。
CodeHxr

2

我不确定这是否是相同的根本原因,但是我发现在ReSharper选项中,选中了“ Use MsBuild”,并且报告了各种错误。尝试检查“ ReSharper->选项->常规”,然后查看“使用MsBuild”检查所处的状态。


2

转到ReSharper→ 选项常规,然后单击Clear Caches。(我有8.2,所以如果您使用的是其他版本,则可能在其他位置。)

然后,您需要重新打开解决方案,ReSharper将重新分析所有内容。


为我工作,谢谢。我的解决方案中有大量的项目,并且不想一一卸载/重新加载它们:p不知道为什么会失败。
Karl Patrik Johansson,2015年


0

唯一对我有帮助的是:取消安装,然后重新安装Resharper(修复无效)

Visual Studio 2010 SP1 ReSharper 7.1.3000.2254


0

这是一个奇怪的问题,在8.2.3版本(内部版本8.2.3000.5176)中仍然有效。

在我看来,始终如一的工作就是重建解决方案。

在VS 2013中:构建->重建解决方案


0

如果上述解决方案不起作用,则可以尝试重置项目输出类型。这似乎可以修复带有ReSharper 10.1的VS2015 Update 1上的问题



0

Resharper报告了参考中包含的项目中缺少的参考。在尝试了其他解决方案之后,我按照此答案的说明禁用了Resharper ,然后发现Visual Studio的intellisense仍然报告相同的错误。

此时,我意识到项目文件可能存在问题。我怀疑引用在合并过程中被巧妙地破坏了。1个

我删除了它抱怨找不到的引用,然后重新添加了它。Visual Studio中的错误消失了。然后,我重新启用了Resharper,它不再抱怨项目中的错误。


  1. 当我检查一下csproj文件中的更改时,发现的内容是</Compile>没有相应的打开标记的其他内容。因此确实是合并错误。
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.