在构建时自动部署 DLL

Deploy DLL automatically on build

我正在为一个项目使用 nuget GeckoFX

安装此包后,我注意到它只包含两个引用我的项目的 .NET DLL(Geckofx-CoreGeckofx-Winforms)。

我还注意到 nuget 安装程序没有在我的项目上放置任何构建事件。

但是我每次建工程的时候,都会在Debug目录下生成很多其他的dll和exe。

它怎么做到的?

GeckoFX NuGet 包依赖于 Baseclass.Contrib.Nuget.Output,后者是负责将文件复制到输出目录的 NuGet 包。

Baseclass.Contrib.Nuget.OutputNuGet 包有一个自定义 MSBuild 任务,该任务查找任何已安装的 NuGet 包具有的输出目录,并将所有这些文件复制到项目的输出目录。

如果查看包目录,您会看到 GeckoFX NuGet 包有一个输出目录:

packages\GeckoFX.1.0.4\output

编译项目时,所有这些文件都会复制到项目的输出目录中。