NuGet是否适合下拉编译不需要的程序集,但是在运行时?我有一个Visual Studio解决方案,其中包含编译所需的许多NuGet包 - 这些包不保存在源代码管理中。在运行时,需要一些额外的dll。创建一个VS后构建步骤是不好的做法,该步骤调用NuGet.exe来下载这些包,然后将二进制文件复制到所需的位置?它看起来不像NuGet的预期用途,但我没有看到这种方法有任何明显的缺陷。
答案 0 :(得分:3)
我不确定这是否是一个很好的方法,但它可以解决你的问题:
使用有问题的DLL创建一个NuGet包作为内容。您应该在nuspec文件中包含以下内容:
<files>
<file src="path\to\dll\one.dll" target="content\dlls\one.dll" />
<file src="path\to\dll\two.dll" target="content\dlls\two.dll" />
</files>
在项目中安装此NuGet软件包时,您将在项目根目录中添加一个 dll 文件夹。然后,您可以转到所有包含文件的属性选项卡,并为复制到输出目录设置始终。