实体框架反向导航

时间:2016-10-22 11:17:03

标签: c# ef-code-first

我有两个简单的表订单和订单类型。

我想知道是否有办法反向导航实体,我可以选择ordertype实体并显示所有订单实体。

1 个答案:

答案 0 :(得分:1)

是。我假设订单有一种订单类型。

public class Order
{
    public virtual OrderType Type { get; set; }
}

public class OrderType
{
    public virtual ICollection<Order> Orders { get; set; }
}

我将导航属性设置为虚拟以启用延迟加载。如果您愿意,还可以添加外键属性:(假设您使用long键)

public class Order
{
    [ForeignKey("Type")]
    public long TypeId{ get; set; } //Can also be nullable (long?) if you want
    public virtual OrderType Type { get; set; }
}

public class OrderType
{
    [Key]
    public long Id { get; set; }
    public virtual ICollection<Order> Orders { get; set; }
}