2012-08-28 22 views
0

我在我的數據庫中設置了以下多對多關係。映射查找表和EF中的額外屬性

table example

使用代碼優先EF映射; A TicketICollectionBranch,反之亦然。

這一切工作正常,但現在我需要做出重大變化,因爲規範已充實。

最初只有一個Ticket可能被標記爲IsRead但作爲一個概念,只有當Ticket被分配給一個分支時才真正起作用。我需要做的是說每個人Branch已經閱讀Ticket

現在我首先想到的是,我應該改變的關係表BranchTickets使之具有標識列和IsRead財產從而創造一個一對多的關係,但我不那麼懂得兩國外交地圖使用Code-First Api的密鑰。

這是否是正確的方法,如果是的話我將如何去確保EF適當地映射表?

回答

0

如果Ticket只能被視爲Branch級讀,那麼我會說你需要做的是從Ticket刪除IsRead屬性,並將其移動到BranchTickets

這意味着每個單獨的票可以與多個分支關聯,其可以具有不同的讀取狀態。

我將如何去確保EF表適當

這是你需要做的DB水平變化的地圖,你就可以更新你的EF模型。

+0

請您澄清我需要對模型本身做出哪些更改?我更新了數據庫和我的edmx,但我現在停留在代碼第一部分。 –

+0

在VS中,如果你雙擊你的EDMX文件,它應該在設計器視圖中打開。右鍵單擊模型中的任何位置,您應該會看到「數據庫更新模型」選項。您可能需要手動從您的票據模型手動刪除舊的'IsRead'屬性我不確定它是否會自動刪除字段。 – James

+0

我的意思是POCO課程本身。儘管我很感謝。 –