无法在通用 Windows 或 WPF 应用程序中引用 .NET Core 类库

Posted

技术标签:

【中文标题】无法在通用 Windows 或 WPF 应用程序中引用 .NET Core 类库【英文标题】:Can't reference .NET Core class library in Universal Windows or WPF app 【发布时间】:2017-07-18 11:11:20 【问题描述】:

我有一个面向 .NET Standard 1.6 的 .NET Core 类库。

我想制作一个带有 GUI 的小型 Windows 应用程序,我可以使用它来测试我的类库的各种功能。在这一点上,我并不特别关心它是 WPF 还是 Universal。

我尝试使用 Visual Studio 2017 RC 中的可用模板将两种项目类型(WPF 和 UWP)添加到解决方案中,但是当我尝试构建任何一个时,我都会遇到兼容性错误,例如

.NETStandard,Version=v1.6... cannot be referenced by a project that targets UAP,Version=v10.0.10586

.NETStandard,Version=v1.6... cannot be referenced by a project that targets .NETFramework,Version=v.4.5.2

这是有道理的,但我完全不知道如何制作任何可以使用 .NET Core 类库的 GUI 应用程序。

【问题讨论】:

Change NET Core version for UWP application的可能重复 【参考方案1】:

在此处查看此表:https://github.com/dotnet/standard/blob/master/docs/versions.md

或者图片形式:

所以您使用的是 UWP 版本 10,您只能使用使用 .net 标准 1.4 的库。对于 .net 框架版本 4.5.2,您只能使用 .net 标准 1.2。

在 .net 标准上创建库的开发人员应尽量保持版本尽可能低,以便尽可能多的框架可以使用它,但这并不总是会发生。公平地说,那些早期版本的 .net 标准缺少很多东西。

如果您可以控制类库,则应尽可能降低 .net 标准目标版本(例如,您不使用更高版本的任何内容)。如果类库来自其他人,那么您可能不走运。

【讨论】:

在当前待编辑的情况下 - 我建议删除图像 - 因为它会一次又一次地过时 - 我们真的想时不时地编辑它吗? @linindexi

以上是关于无法在通用 Windows 或 WPF 应用程序中引用 .NET Core 类库的主要内容,如果未能解决你的问题,请参考以下文章

Windows 10 通用应用程序文件/目录访问

Windows 8 运行时(WinRT/Windows 应用商店应用程序/Windows 10 通用应用程序)与 Silverlight 和 WPF 相比如何? [关闭]

Windows 通用应用程序:无法加载文件或程序集 - 找到的程序集的清单定义与程序集引用不匹配

WPF等效于Application.AddMessageFilter(Windows窗体)

WPF(Windows10通用应用程序开发) 线性插值动画 or 帧动画学习笔记及实例

如何在 Windows 上创建针对 WPF 的 .NET 核心库?