2009-12-11 43 views
0

我正在創建一個簡單的Prism 2.1演示程序,它使用'目錄搜索'方法來填充模塊目錄。我的shell使用Windows資源管理器UI進行設置;它有一個導航區域和一個工作區域。我創建了NavigatorModule和兩個工作區模塊WorkspaceAModule和WorkspaceBModule。我已經從NavigatorModule聲明瞭一個依賴關係到兩個工作區模塊。Prism ModuleDependency ModularityException

我得到一個ModularityException,出現以下消息:「一個模塊聲明對另一個未聲明爲要加載的模塊的依賴關係。缺少模塊:WorkspaceBModule,WorkspaceAModule。」這兩個工作區模塊都不是按需加載的,所以我不確定爲什麼我得到這個錯誤。如果我從NavigatorModule中刪除依賴項,問題就會消失。

任何想法或建議?謝謝。

這裏是導航:

[Module(ModuleName = "NavigatorModule")] 
[ModuleDependency("WorkspaceAModule")] 
[ModuleDependency("WorkspaceBModule")] 
public class NavigatorModule : IModule 
{ 
    ... 
} 

這裏是WorkspaceA:

[Module(ModuleName = "WorkspaceAModule")] 
public class WorkspaceAModule 
{ 
    ... 
} 

這裏是WorkspaceB:

[Module(ModuleName = "WorkspaceBModule")] 
public class WorkspaceBModule 
{ 
    ... 
} 

回答

0

我發現我的答案。我從工作區模塊類聲明中省略了IModule接口(請參閱上面的工作區模塊聲明)。添加接口(參見上面的NavigatorModule聲明)解決了這個問題。