2011-05-19 44 views
1

想象一下,我有用戶ID(其實我們也有大約四列像用戶id,ADDDATE,創建ModDate等幾乎所有表)柱子上幾乎所有的實體。如何定義的實體框架所有實體共同財產(IES)

我怎麼能做出這樣的列(縣)可在一個單獨的實體(比如父實體),使所有其他實體(子實體)從它繼承?

回答

0

如果您正在使用生成的實體類(POCO或EntityObject),您將不得不在您的模型中定義基本抽象實體(EDMX)並在TPC繼承中派生其他實體 - 根本不這樣做,因爲它會引入許多其他問題 - 例如,你將訪問從基類型的單ObjectSet的所有實體,PK將不得不所有的實體中是唯一的,等

另一種方法是要麼使用自定義的POCO類(不產生)或自定義T4模板創建通用對象繼承,但仍然使用設計器中的普通實體而不繼承。我認爲這是不可能的,但前幾天我用簡單的例子測試它和它的工作 - 但我還是有點懷疑這種辦法。

+0

我不知道像所有實體之間的共享功能(如:CreatedDate,UpdatedDate等)這樣一個重要的東西需要這麼多的解決方法,增加了混亂的可能性。雖然以我的經驗,這在CodeFirst中很容易實現! – Daniel 2014-06-10 03:06:50

2

嘗試使用類似於hereheremodify the template的T4模板來包含具有這些屬性的基類(從EntityObject繼承),並從此基類繼承每個類。