繁体   English   中英

Visual Studio Nuget 包管理器 Net Core 允许高于目标 sdk 的包

[英]Visual Studio Nuget Package Manager Net Core allowing packages that are higher then target sdk

所以我有一个针对 Net Core 2.1(特别是 2.1.500)的项目

我还有一个 global.json,其中也有 2.1.500。

最近 Microsoft 更新到 Net Core 2.2,但我还不想转向那个。

当我打开 Nuget 包管理器时,它向我显示某些包有可用的更新

在此处输入图片说明

问题是所有这些包都是针对 2.2 sdk 的,它完全忽略了我没有针对这一点的事实。

这似乎是一个错误,因为在 .Net Framework 中,它不会建议针对比您使用的更高的 sdk 的软件包。

这样对吗? 我应该向 Net Core 团队报告问题吗?

功能是正确的。 这些库面向.NETStandard2.0而不是.NET Core App 2.2 ,这意味着与.NET Standard 2.0兼容的任何.NET Core应用程序都可以使用这些库,而不管它们使用的是什么.NET SDK

例如,请查看 Visual Studio 的“ Manage Nuget Packages窗口中的EntityFramework.SqlServerCompact 它将其依赖项列为.NETFramework,Version=v4.0 ,这意味着它不能在.NET Core或任何早期版本的.NET Framework

此外,如果您尝试在.NET Core安装EntityFramework.SqlServerCompact包,您将在“错误列表”窗口中看到错误:

警告 NU1701 包“EntityFramework.SqlServerCompact 6.2.0”是使用“.NETFramework,Version=v4.6.1”而不是项目目标框架“.NETCoreApp,Version=v2.1”恢复的。 此包可能与您的项目不完全兼容。

暂无
暂无

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

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