Entity framework 实体框架CTP5一对一映射
我有两张桌子: 要求 RequirementId-PK 固定装置 固定ID-PK RequirementId-FK/可为空/唯一约束 一个夹具只能有一个要求,其他夹具不能引用相同的要求。夹具不必有要求,它是可选的 我所做的是,在Sql Server中,我对Fixture表中的RequirementId列设置了唯一的约束。如何在实体框架CTP5中设置此映射 是否可以在每个实体上都有一个双向导航属性Entity framework 实体框架CTP5一对一映射,entity-framework,entity-framework-4,entity-framework-ctp5,ef-code-first,ef4-code-only,Entity Framework,Entity Framework 4,Entity Framework Ctp5,Ef Code First,Ef4 Code Only,我有两张桌子: 要求 RequirementId-PK 固定装置 固定ID-PK RequirementId-FK/可为空/唯一约束 一个夹具只能有一个要求,其他夹具不能引用相同的要求。夹具不必有要求,它是可选的 我所做的是,在Sql Server中,我对Fixture表中的RequirementId列设置了唯一的约束。如何在实体框架CTP5中设置此映射 是否可以在每个实体上都有一个双向导航属性 public class Fixture { public int FixtureId {
public class Fixture
{
public int FixtureId { get; set; }
public Requirement Requirement { get; set; }
}
public class Requirement
{
public int RequirementId { get; set; }
public Fixture Fixture { get; set; }
}
也许我完全弄错了,所以任何建议都很好。
提前感谢不幸的是,EF的当前版本无法使用唯一约束。在EF中实现1:0..1映射的唯一方法是“共享PK”。这意味着,如果主实体是Fixture,它将有FixtureId作为其主键,而Requirement将有FixtureId作为其主键,FK到Fixture。您所追求的是所谓的一对一外键关联,就像前面提到的Ladislav一样,EF本机不支持。然而,我在中首先展示了如何用代码实现它 如果需求必须能够在没有固定装置的情况下存在呢?太棒了。提前谢谢