在 Bootstrap 创建目录后,您可以使用 Unity 或 MEF 加载模块吗?换句话说,当应用程序启动并且 Bootstrap CreateModuleCatalog 代码已执行时,单击按钮加载一个未知的模块?无论是在文档中还是通过互联网搜索,我都没有找到一个很好的例子。要么它不支持这一点,要么我只是错过了一些东西。我发现的所有东西都只在 Bootstrap 中加载模块。
我正在尝试进行概念验证的基本 WPF 项目是:
我有一种感觉,它相对简单,我一直在旋转我的轮子试图解决这个问题。
最佳答案
查看 Prism 4.0 快速入门 - Silverlight 的 MEF 模块化。
本快速入门从 XAML 创建目录,但您可以手动将条目添加到模块目录并传递类似参数。模块信息类唯一需要的是 XAP 文件的 REF。
你也可以看看桌面版。这个在目录中找到包含模块的 DLL,然后从磁盘加载它们。您可以通过指向某个文件位置的已知 DLL 来做同样的事情。
本质上,如果您将正确的模块信息添加到 ModuleCatalog 中,则需要加载模块,下载或加载 DLL,MEF/Unity 容器将初始化该模块。
关于wpf - Prism:创建外壳后将模块加载到目录中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5150451/