c# - .net core/.net 标准项目之间的 Resharper 引用错误

标签 c# .net visual-studio .net-core resharper

我在 Visual Studio 中有两个项目,第一个中的类引用第二个中的类。第一个项目是一个 .netcore 应用程序,其项目文件中包含以下内容:

<TargetFramework>netcoreapp2.0</TargetFramework>

第二个项目有多个目标框架:

<TargetFrameworks>netstandard2.0;net461;net462</TargetFrameworks>

两个项目都可以编译并正常工作,但是位于第二个项目的类在第一个项目的代码中显示为红色,好像存在引用错误。对于上下文,这是一个通用示例:

enter image description here

被弄脏的红色部分是另一个项目中定义的类。我可以导航到它(使用 F12/“转到定义”或 ctrl + 单击),但是当我将光标悬停在红色文本上方时,会显示

Cannot resolve symbol 'MyClassName'

所以要绝对清楚:一切仍然有效 - 只是 Resharper 错误地向她报告了一个引用错误,这让我很烦恼。

我怎么知道是 resharper 造成的?因为如果我禁用 Resharper(工具 -> 选项,搜索 resharper 并单击“暂停”),错误就会消失:

enter image description here

再次启用 Reshaper 会导致错误立即返回。

我怀疑这与项目类型(即它们的目标框架)有关,但我一直无法准确地弄清楚。

关于如何消除这些错误的任何想法?

最佳答案

Resharper 恶作剧

解决方案一

Tools->Options->ReSharper 
  • 立即暂停
  • 简历

它刷新缓存和/或其他一些黑魔法


方案二

您可以尝试隐式清除 ReSharper 缓存

ReSharper->Options->Environment->General 
  • 清除缓存。

方案三

您也可以尝试卸载然后重新加载项目。

Solution Explorer->Right Click
  • 卸载项目
  • 重新加载项目

方案四

作为最后的手段,您可以尝试手动删除解决方案缓存

%LOCALAPPDATA%\JetBrains\Transient\ReSharperPlatformVsXX\vXX\SolutionCaches\

关于c# - .net core/.net 标准项目之间的 Resharper 引用错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48902278/

相关文章:

c# - 调试时 "Form"上的这些黑底数字是什么?

c# - C#中的应用程序启动

c# - ASP.NET-Core 嵌套 ASP TagHelper

c# - Array.ConstrainedCopy() 不仅仅是备份和复制操作吗?

c# - 部分 protected 接口(interface)但没有抽象类

visual-studio - 这个配色方案元素的名称是什么?

c# - 如何从具有组件输出的设备获取高清信号并将其显示在 C# 应用程序的窗口中?

c# - 以编程方式添加端点 header 安全性 WCF

.net - 委托(delegate)签名不匹配时没有错误

visual-studio-2010 - 如何从批处理文件执行 'msbuild'命令