如何从类库中引用nuget包的子集?

时间:2018-07-13 20:43:45

标签: c# asp.net-core nuget

我在.NET core中有一个Web API项目。默认情况下,它具有对Microsoft.AspNetCore.App的依赖。

我需要访问我拥有的另一个类库项目中的某些程序包依赖项。假设我需要Microsoft.Extensions.Configuration.Abstractions

Visual Studio建议我在我的packages文件夹中添加对nuget下载的DLL的引用。那是有效的方法吗?还是将其作为单独的nuget包添加到类库中更好?如果首选后一种方法,我怎么知道应该使用哪个版本?

1 个答案:

答案 0 :(得分:1)

您应该添加对NuGet包的引用,该包包含要编写的其他库中所需的API。您应该选择哪个版本?由你决定。一种常见的原则是,引用具有所需API的最低版本,以使您的库在大多数地方都可以使用。引用您的库的任何人仍然可以将版本“提升”到更高的版本,并且总体上没有问题(例外是发生重大更改时例外)。

请勿直接从磁盘引用DLL。这会导致诸如使源代码控制更加复杂(不同的机器具有不同的路径)以及使依赖项管理变得更加复杂(没有容易的更新依赖关系的方法)之类的问题。