使用實體框架時,我爲每個所需的模型製作標準的C#類。所以,如果我有一個汽車模型,它可能看起來像下面這樣:我可以將實體框架模型邏輯封裝到模型本身中嗎?
public class Car
{
public string Model { get; set; }
}
,並管理我的數據庫內的車型,我創建了一個DbContext
類與DbSet<Car>
屬性裏面。這很好,但是我覺得這個額外的DbContext
類是沒有必要的。有沒有辦法以我自己的方式管理自己的DbSet<Car>
?
public class MyDbContextClass : DbContext
{
public DbSet<Car> Cars { get; set; }
}
取而代之的是下面的工作流程:
var db = new MyDbContextClass();
var cars = db.Cars.ToList();
我想看看是否有可能使用以下工作流程:
var cars = Car.ToList();
這可能嗎?
絕對有可能的,但有什麼好處? –
除化妝品外,沒有其他好處。減少代碼行並需要創建該上下文類。也許我只能保留Car類中的所有特定於Car的代碼。 – Ryan
數據檢索不是實體特定的。這是另一個類,db語境的責任。域實體應該不知道它們的存儲/檢索方式。 –