2010-11-05 42 views
0

實體框架設計人員是否有辦法複製實體,然後將過濾條件應用於兩者以使其唯一。 Id喜歡保留所有的導航屬性,而不是。實體框架4:您是否可以複製實體並根據過濾條件對其進行修改

例如,在數據庫中說我有一個訂單表。我可以有兩個實體,一個名爲IncompleteOrders,另一個名爲Complete,基於同一個表,完整的數據庫字段'complete'上指定了一個過濾器。

在此先感謝

回答

0

是的,這就是所謂的每個數字體系

表有一個物理表,其中有一個特殊的,單一的,標量,它被用作鑑別列。

像這樣:

OrderId OrderName IsComplete 
1  Foo  1 
2  Bar  1 
3  FooBar 0 

IsComplete是鑑別(BIT列,例如),所以當你設置你對你的EDMX實體,創建三個實體:

1. Orders 
2. CompleteOrders (derives from Orders) 
3. InCompleteOrders (derives from Orders) 

在訂單的表格映射中,您說「映射到CompleteOrders,當IsComplete = 1」和「映射到InCompleteOrders時,OrderType = 0」。

TPH /鑑別器模式here的良好寫法。