在代码优先实体框架 5 中定义相关集合的正确方法是什么?我正在关注此摘要,但有些东西不起作用。
我有以下模型:
class Order
{
public Guid Id {get; set; }
public DateTime Created {get; set;}
public ICollection<OrderLine> OrderLines {get; set;}
}
class OrderLine
{
public Guid Id {get; set;}
public Guid OrderId {get; set;}
public Order Order {get; set;}
public string Product {get;set;}
}
class OrderContext : DbContext
{
public DbSet<Order> Orders { get; set; }
public DbSet<OrderLine> OrderLines { get; set; }
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder.Conventions.Remove<PluralizingTableNameConvention>();
base.OnModelCreating(modelBuilder);
}
}
数据库中有Order
一些行。当它被加载时,它的OrderLines
属性为空。
我试过制作OrderLines
虚拟,它没有帮助。否则,一切都设置为默认值。延迟加载是真的,CreateProxy 是真的......
当我尝试Include("OrderLines")
它工作并从数据库中获取行时。