【问题标题】:Why are tons of packages added when I reference a .NET Standard NuGet from within .NET 461?当我从 .NET 461 中引用 .NET Standard NuGet 时,为什么会添加大量包?
【发布时间】:2018-03-22 19:28:33
【问题描述】:

我有一个 .NET 461 项目,它引用了一个面向 .NET Standard 1.6 的 NuGet。

据我了解 by this answer,引用此 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 自动引用了所有这些吗?我找不到有关此的任何信息。

【问题讨论】:

    标签: .net .net-standard


    【解决方案1】:

    我们从 packages.config 中引用的包转移到在项目文件中引用的最近改进之一是,它们可以实现更改,其中仅包含您的 direct 项目依赖项文件。 那些依赖所依赖的包不会出现在项目文件中。

    但是,您的 sn-p 建议您仍在使用 packages.config 文件 - 在这种情况下,传递闭包中的所有依赖项都包含在文件中,不幸的是,出于向后兼容性的原因。

    您直接引用了哪些特定包(以及哪些由于依赖关系导致特定包出现在 packages.config 中)没有记录在此文件中。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-05-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-05-02
      • 1970-01-01
      相关资源
      最近更新 更多