繁体   English   中英

实体框架dbset有哪些模型?

[英]entity framework dbset which models?

使用实体框架6和mvc 5,假设我具有以下模型:

class Employee 
{
   public int EmployeeID { get; set; }
   public String Name { get; set; }
   public Department Department { get; set; }
}

class Department 
{
   public int DepartmentID { get; set; }
   public String DepartmentName { get; set; }
   public int FloorNumber { get; set; }
}

在我DbContext类,其中DbSet去,我该怎么办DbSet<Employee>仅或者我也要做DbSet<Department> 现在我只在做DbSet<Employee>因为据我了解,它的主要模型是Employee ,它内部有一个复杂的Department类型,因此理论上,如果Employee加载,那么Department应该被动加载(就像在创建表中那样加载)?

当前,我将Department作为virtual字段进行延迟加载,因为当我尝试在没有virtual属性的情况下访问它时,我会得到一个null pointer exception

另外,我的模型比具有多个复杂对象的模型要复杂一些,每个模型都需要自己的DbSet吗?

谢谢

根据文档 (重点是我的):

类型发现

<剪断>

在下面的示例中,在SchoolEntities类(部门)上仅定义了一个DbSet属性。 Code First使用此属性来发现并提取任何引用的类型。

但是,如果您希望独立于Department来操纵Employee的列表,则应将其包括在内。

暂无
暂无

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

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