[英]C# Design How to Elegantly wrap a DAL class
我有一个使用MyGeneration的dOODads ORM生成其数据访问层的应用程序。 dOODad通过为数据库中的每个表生成一个持久性类来工作。 它的工作原理如下:
// 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)细节,或者这是否可以接受? 是否可以实现某种形式的存储库模式? 请记住,这是大量的性能关键的应用程序。
谢谢,j
尝试提出一个接口,该接口带有您希望DAL公开的方法。 将您的客户端代码绑定到该接口。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.