繁体   English   中英

ReSharper 无法解析符号

[英]ReSharper cannot resolve symbol

我目前正在构建一个 ASP.NET 5 (ASP.NET Core 1.0) MVC 应用程序。 我将 Visual Studio 2015 与 ReSharper Ultimate 10.0.2 一起使用。

我目前有一个由Www (Web 应用程序)和Services层组成的 2 层解决方案。 Www引用了Services层。

当 ReSharper 被暂停时Www层中的类能够从Services层调用对象,如下所示:

在此处输入图片说明

但是,当启用ReSharper 时,我收到以下消息: Cannot resolve symbol 'Services' ,如下所示:

在此处输入图片说明

我试过的:

  1. Tools -> Options -> ReSharper Ultimate -> Options -> Clear Caches
  2. %APPDATA%删除JetBrains文件夹
  3. 重新启动 Visual Studio 2015
  4. 重新安装 ReSharper
  5. 暂停和恢复 ReSharper
  6. 添加和删​​除引用
  7. 重建解决方案

任何帮助表示赞赏。

在 Visual Studio 2017 中,我是这样解决的:

  • 关闭解决方案
  • 删除“.vs”隐藏文件夹
  • 重新打开解决方案并重建它

看起来 Jetbrains 知道这一点:youtrack.jetbrains.com/issue/RSRP-408661

然而,它给了我一个想法。 我将程序集上的 CopyLocal 设置为“true”,现在我的引用解析。

我在 v2017.1 上遇到了同样的问题。 花了一些时间尝试不同的解决方案,如清除缓存、暂停和恢复,但没有成功。

对我有什么帮助:我更新到 v2017.3.1(撰写本文时最新)。 因此,如果您遇到通过简单的挂起或清除缓存无法解决的问题,请考虑更新到最新版本,可能是一个小错误,现在已修复。

对我来说,我必须重新安装 MSBuild。 然后它又起作用了。

似乎那些“EMIT WARNING”定义来自“xkeycheck.h”,一个标准的包含文件,它想检查标准数据类型是否被某些定义覆盖。 似乎只有 resharper 认为是这种情况,而 VisualStudio 本身没有任何问题。 发出的警告永远不会出现在编译中,只会出现在 resharper 中。 我在一个文件中有这个问题,但我还找不到真正的原因。 无论如何,在这个文件中添加一个“#define _ALLOW_KEYWORD_MACROS”阻止了 resharper 运行。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM