我再次需要你的帮助。我正在开发一个具有模块化概念的应用程序。
我想为此使用 Prism 和 Unity。我查看了 Prism 的快速入门示例,还阅读了 MSDN 上的这篇文章。
我的实际代码如下所示:
public class Bootstrapper : UnityBootstrapper
{
protected override DependencyObject CreateShell()
{
return this.Container.Resolve<Shell>();
}
protected override void InitializeShell()
{
base.InitializeShell();
var window = this.Shell as Window;
if (window != null)
{
Application.Current.MainWindow = window;
}
else
{
throw new ArgumentException("The shell has to be a window.");
}
}
protected override IModuleCatalog CreateModuleCatalog()
{
return new ConfigurationModuleCatalog();
}
}
我的配置:
<configuration>
<configSections>
<section name="modules"
type="Microsoft.Practices.Prism.Modularity.ModulesConfigurationSection, Microsoft.Practices.Prism"/>
</configSections>
<modules>
<module assemblyFile="Modules/MyApp.Module1.dll"
moduleType="MyApp.Module1.Module1Module, MyApp.Module1"
moduleName="Module1" />
</modules>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
</startup>
</configuration>
我现在有两个问题,第一个是目录没有正确加载。对我来说,似乎没有调用 load 方法,或者类似的东西。
第二个问题是我认为第一个问题的结果,即我的模块中的初始化方法没有被调用。
有谁能够帮助我?