2012-08-28 86 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课程本身。尽管我很感谢。 –