2010-04-29 56 views
1

我有一個應用程序使用MyGeneration的doodads ORM來生成它的數據訪問層。 doodad通過爲數據庫中的每個表生成一個持久性類來工作。它的工作原理就像這樣:C#設計如何優雅地包裝一個DAL類

// Load and Save 
Employees emps = new Employees(); 
if(emps.LoadByPrimaryKey(42)) 
{ 
    emps.LastName = "Just Got Married"; 
    emps.Save(); 
} 


// Add a new record 
Employees emps = new Employees(); 
emps.AddNew(); 
emps.FirstName = "Mr."; 
emps.LastName = "dOOdad"; 
emps.Save(); 

// After save the identity column is already here for me. 
int i = emps.EmployeeID; 

// Dynamic Query - All Employees with 'A' in thier last name 
Employees emps = new Employees(); 
emps.Where.LastName.Value = "%A%"; 
emps.Where.LastName.Operator = WhereParameter.Operand.Like; 
emps.Query.Load(); 

對於上面的例子,我想知道什麼是最好的方法/技術抽象一些的上我的課的實施細則(即員工DAL對象)。我不相信Employee類應該在其方法中具有Employees(DAL)細節 - 或者這可以接受?是否有可能實現某種形式的存儲庫模式?請記住,這是一個高容量,perfomacne關鍵應用程序。

感謝, Ĵ

回答

0

嘗試想出你會想你的DAL暴露方法的接口。讓你的客戶端代碼綁定到接口。