Visual studio 为什么nuget Bootstrapper使用这么多链接类

Visual studio 为什么nuget Bootstrapper使用这么多链接类,visual-studio,architecture,nuget,Visual Studio,Architecture,Nuget,我最近才发现VisualStudio选项可以将文件作为链接引用。我想我摸索过基本概念,自己也用过一次。然而,当我意识到nuget如何在引导程序中利用这一特性时,我发现自己在想,与适当的分层和引用另一个程序集相比,有什么好处 有人能指出使用链接类相对于分层+引用另一个程序集的好处吗 以减少依赖性。NuGet引导程序的目的是使引导NuGet.exe的逻辑量最小,而不必复制大量代码(这就是为什么某些文件是共享的)。在这种情况下,我们不希望有不必要的额外程序集,nuget引导程序是一个单独的exe。Mm

我最近才发现VisualStudio选项可以将文件作为链接引用。我想我摸索过基本概念,自己也用过一次。然而,当我意识到nuget如何在引导程序中利用这一特性时,我发现自己在想,与适当的分层和引用另一个程序集相比,有什么好处

有人能指出使用链接类相对于分层+引用另一个程序集的好处吗


以减少依赖性。NuGet引导程序的目的是使引导NuGet.exe的逻辑量最小,而不必复制大量代码(这就是为什么某些文件是共享的)。在这种情况下,我们不希望有不必要的额外程序集,nuget引导程序是一个单独的exe。

Mmh。它不只是一个exe吗?因为它后来被合并了。看起来好像它已经分层到了nuget.exe和nuget.Core.dll中,这两个文件稍后会合并。引导程序不会与任何内容合并。NuGet.exe与NuGet.Core.dll合并在一起,它非常庞大(相对而言)。引导程序只有足够的代码来做基本的事情(比如使用nuget.core所做的相同逻辑下载最新版本)。好的,所以基本上你不希望引导程序依赖nuget.core.dll(可能需要有一个引导程序exe),从而使引导程序的文件大小更小。好的,可能是合理的。只是试着让自己熟悉可用的选项;-)