【发布时间】:2010-08-02 05:52:31
【问题描述】:
我有以下表格结构,Entity Framework 正确地以一对多的形式返回:
Patient
{
PatientId PK
}
Death
{
DeathId PK
PatientId FK
}
不幸的是,这个 DB 设计是错误的,因为每个 Patient 只能有一个 Death。设计应该是这样的:
Death
{
PatientId PK
}
但是,这是一个生产系统,无法更改数据库。我正在编写一个新的 ASP.Net MVC 前端,所以我正在使用实体框架重写 DAL 层。
当我调用Patient.Death 时,我得到了Death 的集合。我只希望它返回一个或空的Death(因为Patient 可能还没有死)。
因此,我涉足模型并尝试将关联的 End2 Multiplicity 更改为:0..1 (Zero or One of Death),但是当我构建项目时出现错误:
多重性在角色中无效 关系中的“死亡” 'RefDeath23'。因为 从属角色属性不是 关键属性,上界 依赖角色的多重性 必须是 *。
谁能告诉我,如果可能的话,我可以如何强制它成为一个零或一个关联?
【问题讨论】:
标签: entity-framework c#-4.0 entity-framework-4