Nesting nuget packages



我有一个包含重试策略的 nuget 包和许多 nuget 包 数据库、HTTP 和缓存客户端。这个想法是,所有外部缺陷都应该以有序和安全的方式访问。所有包都托管在专用 nuget 服务器中。

如果我将重试策略 nuget 包包含在各个客户端的 nuget 包中,一方面会很棒,因为仅使用一个包的最终应用程序将获得全部功能。

另一方面,基本包中的更新(此示例示例中的重试策略(将触发对多个应用程序使用的许多其他 nuget 包中的大量更新需求。

是否有任何既定的最佳实践?

我个人的做法是让掘金尽可能独立。因此,依赖性越少越好。

如果您的客户端 nuget 代码依赖于它(因为它没有它就无法编译(,则无论如何都必须添加它。

如果您的客户端 nuget 代码不依赖于重试策略,那么您最好不要将其添加为依赖项。

这使你将来有足够的灵活性,以便在使用客户端 nuget 时使用不同的重试策略。

正如您已经期望的那样:如果添加它并且必须更新重试策略 nuget,则还必须更新客户端 nuget,以便仅使用不同版本的依赖项(尽管没有更改实际代码(。

为了将一组 nuget 与指定版本捆绑在一起(我认为你想要(,您仍然可以创建只保存所选依赖项而没有代码的元包/nugets。

最新更新