2013-03-14 139 views
0

我正在开发一个应用程序使用棱镜,并在该应用程序中,我可以模块的类。然后我有其他需要使用这个模块类的模块。我遇到的问题是我的消费者模块在它需要的模块类之前得到初始化,因此类型注册在UnityContainer中尚不存在。棱镜模块依赖

我发现这篇文章Module dependencies in InitializeShell with Prism这表明我可以使用ModuleDependency属性来设置这种链接,但它似乎并没有工作。

所以,我有我的存储类:

[Module(ModuleName = "StorageModule")] 
public class UserStorageModule : IModule 
{ 
    //code here 
} 

然后以消费者为:

[ModuleDependency("StorageModule")] 
public class EntryModule : IModule 
{ 
    //code here 
} 

然而EntryModule.Initialize()方法仍是首先被调用。我在这里做错了什么?

+0

http://msdn.microsoft.com/en-us/library/ff921124(v=pandp.20).aspx似乎表明这只能用于从directroy的目录,是你正在使用?你可能还应该添加一个'Module(ModuleName = EntryModule)'。 – stijn 2013-03-14 10:47:52

+0

谢谢@stijn,我不从目录加载,以便解释为什么它没有任何区别。 – 2013-03-14 10:59:39

回答