Using Maxtoroq's DBExtensions how can we map an object having list of elements as child property
using just one sql builder?
My sample DB structure
Employee
EmployeeId
FirstName
LastName
Department
DeptId
DeptName
EmployeeDepartment
EmployeeId
DeptId
My POCO
class Department{
public int DeptId {get;set;}
public string DeptName {get;set;}
}
class Employee {
public void Employee(){
Depts = new List<Department>();
}
public int EmployeeId {get;set;}
public string FirstName {get;set;}
public string LastName {get;set;}
public List<Department> Depts {get;set;}
}现在,我希望创建用户实例,包括他与SqlBuilder相关的所有部门,方法是一次运行对db的查询(而不是对db的多次调用)。
我怎么能这么做?
发布于 2014-09-08 14:52:06
AFAIK,没有任何ORM可以在一个数据库调用中加载一个实体,包括一对多的关联。
您可以在DbExtensions中这样做,但是您可以使用数据库/SqlTable代替SqlBuilder:
class MyDatabase : Database {
public SqlTable<Employee> Employees {
get { return Table<Employee>(); }
}
public MyDatabase()
: base("name=MyDatabase") { }
}
var db = new MyDatabase();
Employee emp = db.Employees
.Include("Depts")
.Find(1);https://stackoverflow.com/questions/25712594
复制相似问题