通常情況下,人們將編寫其模型類並創建一個包含多個DbSet的DbContext到相應的模型類,以便首先在EF代碼中創建數據庫。實體框架代碼首先從其他項目添加模型
Prism庫允許您創建模塊。模塊與解決方案中的另一個項目生活在同一個解決方案中,或者可能來自另一個解決方案的DLL。
我現在的問題是:如果你有例如棱鏡模塊(一個分離的項目)與自己的模型(和DbSet定義)。 如何從模塊添加或注入(或讓EF發現)這些模型類和DbSet,並將它們添加到現有的EF數據庫中)?
假設一些外部人員使用自己的數據庫模型編寫了一個插件(棱鏡模塊),並且使用了相應的DbSet定義。 如果該人員將該棱鏡模塊DLL丟棄到程序目錄中,那麼核心應用程序(通常在啓動時)將如何知道棱鏡模塊中還有其他的DbSet,如果它們還不存在,還需要在數據庫中創建。 (以及如何添加?)
在此先感謝。
有人可以給出一個如何做到這一點的代碼示例?我正在考慮MEF的屬性[ImportMany]和[ExportMany],但我不確定這是否可行。
嗯,所以其實你是說我的問題不能用EF代碼先完成? – juFo 2011-12-27 21:44:17
是的......和解決方法是非常繁瑣的。 – LueTm 2011-12-29 01:14:20