【发布时间】:2015-06-16 16:04:38
【问题描述】:
我正在开发一个应用程序,它使用 Prism 动态加载一些包含模块的程序集并扩展我的应用程序。目前我只有一个包含应用程序的 Visual Studio 解决方案,所有模块项目和模块程序集(模块项目的输出)都通过构建后事件复制到应用程序输出目录。模块程序集现在应作为 NuGet 包提供。
创建 NuGet 包时,项目输出通常会被使用该包的项目引用。有没有办法只将项目输出复制到应用程序的输出目录?
我发现 Contrib.Nuget 用于将附加二进制文件复制到输出中,但我正在为项目输出本身寻找一种方法。
一个例子:
- 项目 MyApplication 构建一个名为 MyApplication.exe 的可执行文件
- Project MyModule 构建了一个名为 MyModule.dll 的库
- 项目MyApplication应该使用NuGet来获取MyModule,但是MyModul.dll不应该被引用而只是复制到我的应用程序
【问题讨论】:
-
为什么要避免引用?
-
使用 Prism 模块程序集在运行时加载并初始化几个依赖项(依赖注入)。因此我不需要(也不想要)引用,模块程序集只需要存在即可。