在POCO方法上使用虚拟关键字的原因

时间:2016-07-02 02:49:41

标签: asp.net lazy-loading

在我的Web项目中,我认为使用延迟加载没有任何好处。所以我只使用急切加载。

除非我不使用延迟加载, 我还有什么理由需要在POCO方法上使用虚拟关键字吗?

public class User {
    public int id {get; set;}
    public string name {get; set;}

    public virtual ICollection<Order> orders { get; ;set}
}

public class Order {
    public int id {get; set;}
    public int userId {get; set;}

    [ForeignKey("userId")]
    public virtual User user {get; set;}

}

// Using eager loading to avoid N+1 problem
db.Order.Include("user").Select(x => new {
    orderId = x.id,
    userName = x.User.name
}).ToList();

0 个答案:

没有答案