Prism 7-将ConfigurationModuleCatalog与DirectoryModuleCatalog合并

时间:2019-02-07 11:05:50

标签: c# wpf unity-container prism

我想同时使用两者:

protected override IModuleCatalog CreateModuleCatalog()
{
    return new ConfigurationModuleCatalog();
}

protected override IModuleCatalog CreateModuleCatalog()
{
    return new DirectoryModuleCatalog() { ModulePath = @".\Modules" };
}

我发现了这个问题:

Prism 6 - Merge ConfigurationModuleCatalog with DirectoryModuleCatalog

但是答案中的链接已消失,它返回404。

我还搜索了答案中提到的“ AggregateCatalog”-我在这里查看:

https://github.com/PrismLibrary/Prism/tree/master/Source/Prism/Modularity

在这里:

https://github.com/PrismLibrary/Prism/tree/master/Source/Wpf/Prism.Wpf/Modularity

但是我没有找到...

在Prism 7中使用Unity可以做到这一点吗?

1 个答案:

答案 0 :(得分:1)

尝试一下:

protected override IModuleCatalog CreateModuleCatalog()
{
    var a = new DirectoryModuleCatalog() { ModulePath = @".\Modules" };
    var b = new ConfigurationModuleCatalog();

    return new ModuleCatalog(a.Modules.OfType<ModuleInfo>().Concat(b.Modules).OfType<ModuleInfo>());
}