我们举一个简单的例子。假设我有以下内容:
public class Category
{
public int CategoryID {get;set;}
}
public class Product
{
public int ProductID {get;set;}
public int CategoryID {get;set;}
public Category Category {get;set;}
}
EF
modelBuilder.Entity<Product>().HasRequired(req=>req.Category).WithMany().Map(m=>m.MapKey("CategoryID"));
我是否必须始终“包含”类别才能获得分配给我的产品的CategoryID?它没有.Include(例如db.Products.All())生成的SQL实际上将返回CategoryID。
答案 0 :(得分:1)
你需要.Include来填充类别nav属性(否则它将为null)。将始终填充CategoryID属性