当我从 .NET 461 中引用 .NET Standard NuGet 时,为什么会添加大量包?
Why are tons of packages added when I reference a .NET Standard NuGet from within .NET 461?
我有一个 .NET 461 项目引用了面向 .NET Standard 1.6 的 NuGet。
据我了解 ,引用此 NuGet 将使我的 .NET 461 项目 packages.config 如下所示:
<packages>
...
<package id="NETStandard.Library" version="1.6.1" targetFramework="net46" />
...
</packages>
实际上,它看起来更像这样(为了简单起见,我还没有包括至少 10 个):
<packages>
...
<package id="NETStandard.Library" version="1.6.1" targetFramework="net46" />
<package id="Microsoft.NETCore.Platforms" version="1.1.0" targetFramework="net46" />
<package id="System.AppContext" version="4.3.0" targetFramework="net46" />
<package id="System.Runtime.Extensions" version="4.3.0" targetFramework="net46" />
...
</packages>
是NETStandard.Library
自动引用所有这些吗?我找不到任何关于此的信息。
我们将包从在 packages.config
中引用转移到在项目文件中引用的最新改进之一是它们可以实施更改,其中只有您的 direct 项目依赖项包含在文件中。 那些依赖项所依赖的包没有出现在项目文件中。
但是,您的代码片段表明您仍在使用 packages.config
文件 - 在这种情况下,传递闭包中的所有依赖项都包含在文件中,不幸的是,出于向后兼容性的原因。
您直接引用的哪些特定包(以及哪些包由于依赖性导致特定包出现在 packages.config 中)未记录在此文件中。
我有一个 .NET 461 项目引用了面向 .NET Standard 1.6 的 NuGet。
据我了解
<packages>
...
<package id="NETStandard.Library" version="1.6.1" targetFramework="net46" />
...
</packages>
实际上,它看起来更像这样(为了简单起见,我还没有包括至少 10 个):
<packages>
...
<package id="NETStandard.Library" version="1.6.1" targetFramework="net46" />
<package id="Microsoft.NETCore.Platforms" version="1.1.0" targetFramework="net46" />
<package id="System.AppContext" version="4.3.0" targetFramework="net46" />
<package id="System.Runtime.Extensions" version="4.3.0" targetFramework="net46" />
...
</packages>
是NETStandard.Library
自动引用所有这些吗?我找不到任何关于此的信息。
我们将包从在 packages.config
中引用转移到在项目文件中引用的最新改进之一是它们可以实施更改,其中只有您的 direct 项目依赖项包含在文件中。 那些依赖项所依赖的包没有出现在项目文件中。
但是,您的代码片段表明您仍在使用 packages.config
文件 - 在这种情况下,传递闭包中的所有依赖项都包含在文件中,不幸的是,出于向后兼容性的原因。
您直接引用的哪些特定包(以及哪些包由于依赖性导致特定包出现在 packages.config 中)未记录在此文件中。