如果您要创建一个必须添加某些第三方依赖项的NuGet包,那么您基本上有两个选项:
我注意到,例如RavenDB已经内化了所有第三方依赖项,而其他一些项目显然依赖于其他NuGet包。
我想知道是否有关于何时选择任何一种方法的最佳做法/提示。 什么是专业人士和每个人的利弊?
答案 0 :(得分:6)
本着NuGet的精神,我建议在第三方软件包上添加依赖项,而不是内化DLL。 NuGet是围绕“依赖”构建的,它完全依赖于那些。
答案 1 :(得分:0)
我冒昧地说,这更多地取决于您的实现是否特定于版本,以及是否有可能在更新和释放依赖关系时,您的程序包可以从中受益(或者如果不推荐实现可能会损坏)。 / p>
此外,通过使包具有nuget依赖性,可以减少重复和目录大小(以及包大小)。更常见的库只包含在您的项目中一次(但是任何其他可能也使用此库的包都会受益,因为它已经被包含在内)。