[英]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.