我使用Unity作为IoC-Container的Prism WPF应用程序包含一个名为“LanguageModule”的模块:
我的ShellViewModel需要此模块的实例。 我的Shell需要一个ShellViewModel实例。
但是在我的模块加载之前调用了 CreateShell 方法。 难道我做错了什么?
我的模块将自己添加到Container(InitialzeCode :)?
是否正确container.RegisterInstance(typeof(ILanguageService), new LanguageServicePrototype());
如何将语言服务添加为模块?
答案 0 :(得分:0)
在通过bootStrapper对InitializeModules的调用初始化其他模块之前调用CreateShell。
所以,不要编写自己的派生引导程序类以某种方式解决这个问题(如果可以),我会将你在shellViewModel中的任何内容(取决于语言模块)重构为它自己的单独模块,然后设置模块依赖于您的语言模块。