如何为 .NET Core 3.1 中的依赖包使用更新版本的 NuGet 包?

How to use a more recent version of a NuGet package for dependent packages in .NET Core 3.1?

我有一个引用 Newtonsoft.Json v 12.0.2 的 NuGet 包。我无法访问该 NuGet 包的源代码。 (从技术上讲,NuGet Package Explorer 统计它确实 >= 12.0.2 )

如果我希望该软件包利用 Newtonsoft.Json v 12.0.3,是否像我将 v 12.0.3“安装”到 my 项目中一样简单,并且所有使用 v 12.0.2 的家属(及其 children 等)现在将神奇地使用我安装的 12.0.3 版本?

或者每个依赖项是否仅使用其包中明确定义的版本?

这个叫什么?显式引用?

其他信息:这适用于 .NET Core 3.1

对于新的sdk项目,当你安装一个nuget包时,它会安装它对你项目的最低依赖,如果你想使用高版本,你只需要单独安装更新的依赖nuget包,然后它会将所有依赖项更新为更新版本。

并且它会将您项目的所有依赖项更新到该版本。 注意它不会对单个 nuget 包起作用,而是对所有包起作用。

这两个nuget包使用了Newtonsoft.Json 12.0.2依赖

如果我单独安装Newtonsoft.Json 12.0.3 nuget包:

他们都用了Newtonsoft.Json 12.0.3,证明他们是共享的,而不是使用单独的版本。