繁体   English   中英

EF4:定义多个外键

[英]EF4: Define multiple foreign keys

所以我有一个这样的桌子人

Id    Name
1     John
2     Mike
3     Sophie

我有一张桌子电话

Id    IdReceptor    IdRequired
1     1             2
2     1             1
3     2             3
4     3             1

基本上一个人接电话,那个人是接收者 ,电话上的一个人需要与另一个人交谈,可以是同一个人,也可以是另一个人,所以我们有此表设计, IdReceptorIdRequired都是外键的

如何使用EF4代码优先对此建模?

例如这样:

public class Person
{
    public int Id { get; set; }
    public string Name { get; set; }
}

public class Call
{
    public int Id { get; set; }

    [ForeignKey("Receptor")]
    public int IdReceptor { get; set; }
    [ForeignKey("Required")]
    public int IdRequired { get; set; }

    public Person Receptor { get; set; }
    public Person Required { get; set; }
}

如果需要,可以在Person引入集合,并使用批注或Fluent API添加其他映射,或者,如果要延迟加载,可以使Person导航属性为virtual 但是上面的代码是一个简单的解决方案。 EF将按照惯例检测两个一对多的关系。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM