【问题标题】:What is the correct way to manage module dependencies when using Prism?使用 Prism 时管理模块依赖关系的正确方法是什么?
【发布时间】:2015-07-20 22:16:11
【问题描述】:
我正在尝试使用 Prism,但由于 Shell 项目不直接引用 Module 项目,我遇到了许多不便。主要的不便之处在于模块输出程序集及其依赖项在编译后不会复制到 shell 项目输出文件夹中。我已经成功地使用 xcopy 作为构建后事件将目标程序集复制到项目输出文件夹(这不是特别好,但似乎工作),但不是依赖项。
是否有解决此问题的标准方法,还是主要是临时解决方案?必须为每个模块中的每个配置设置一个构建后事件似乎是多余的,所以我想尽可能避免它。
【问题讨论】:
标签:
visual-studio
prism
project-management
dependency-management
【解决方案1】:
对此有一个简单的解决方案。您可以在 Visual Studio 中设置项目依赖项,而无需在程序集中创建交叉引用。
打开解决方案属性并转到项目依赖关系页面。在这里,在组合框中选择 Projects 包含您的 shell 的主 EXE。或者,在解决方案资源管理器中右键单击您的主项目,然后在此处选择 Project Dependencies...:
在取决于列表框中,勾选输出目录中所有需要编译/复制的模块项目。
您可以为解决方案中的所有项目配置进一步的依赖关系(例如,如果您在模块之间存在间接依赖关系)。
在更改任何具有依赖关系的项目时,所有依赖项目都将由 Visual Studio 重新构建并根据构建配置进行处理(例如复制到输出目录)。