c# - 如何从类库中引用 nuget 包的子集?
问题描述
我在 .NET 核心中有一个 Web API 项目。默认情况下,它依赖于 Microsoft.AspNetCore.App。
我需要在我拥有的另一个类库项目中访问一些包的依赖项。假设我需要Microsoft.Extensions.Configuration.Abstractions
.
Visual Studio 建议我在我的包文件夹中添加对 nuget 下载的 DLL 的引用。这是一种有效的方法吗?还是将其作为类库的单独 nuget 包添加更好?如果首选后一种方法,我怎么知道我应该使用哪个版本?
解决方案
您应该添加对 NuGet 包的引用,该包包含您正在编写的其他库中所需的 API。你应该选择哪个版本?由你决定。一种常见的理念是引用具有所需 API 的最低版本,以便您的库可以在最多的地方使用。任何引用您的库的人仍然可以将版本“提升”到更高版本,并且通常没有问题(例外是发生重大更改时)。
不要直接从磁盘引用 DLL。这会导致诸如源代码控制更复杂(不同机器有不同路径)、依赖管理更复杂(更新依赖没有简单方法)等问题。
推荐阅读
- java - Microsoft Edge 的“无效参数:'handle' 必须是字符串”错误以及如何添加“w3c:false”功能?
- python - 如何使用 Python 中的 Open Street Map 获取附近的道路信息?
- java - 使用eclipse和MySql hibernate在java中自动生成带有卷边距离的序列键
- javascript - 根据其他数组过滤数组
- swiftui - 在 SwiftUI 中向左而不是向右导航?
- firebase - 使用flutter firebase的应用程序内部通知
- javascript - 当我使用 Observables 时 Angular ViewChild 不工作
- repository - 干净架构层方法中的网络请求轮询逻辑布局
- python - 在 Pandas 中,如何测试一个值是否存在于给定唯一 ID 的两个数据框中?
- python - 奇怪的 gzip - 几乎提取,但不完全正确