NuGet:是否需要引用隐式依赖项?

Ben*_*iFB 6 .net nuget nuget-package .net-core-3.0

我最近从 ASP.NET Core 2.2 升级。到 3.0。随着关于他们的元包的变化,我现在处于一切正常的状态,但没有明确引用一些非常重要的包。一切正常,因为它们被隐式引用。例如:

在此处输入图片说明

您可以看到我明确引用了 Microsoft.EntityFrameworkCore.SqlServer,但是我没有明确引用 Microsoft.EntityFrameworkCore。它仍然被拉进来,因为它似乎是一个间接引用。

我的问题是:这是一个合理的项目配置吗?明确地拉入 Microsoft.EntityFrameworkCore 有什么好处吗?我想可能会对版本升级产生影响。

谢谢...

Jon*_*eet 5

这是一个合理的项目配置吗?

是的。传递依赖在 SDK 风格的项目中绝对是一件事,根据我的经验,它们让生活变得更简单。

我只会添加一个冗余的 NuGet 引用,以便专门升级该包 - 我只会对次要版本小心谨慎。例如,如果我使用依赖于包 B v1.1 的包 A v1.0,我可能会添加对包 B 的依赖以升级到 v1.2,但不会升级到 v2.0。