Iam苦苦与NHibernate和它的lazyload。NHibernate - LazyLoad一比零
我有一个结构,我简化了但显示我的问题。
Class Shift {
int ShiftID;
DateTime ShiftStart;
Employee Employee;
}
Class Employee {
int EmployeeID;
string Name;
}
数据:
ShiftData
ID SHIFTTIME EmployeeID (int)
1 12:00 0
2 13:00 1
3 14:00 0
4 13:00 3
Employees
ID NAME
1 Morten
2 Peter
3 Henrik
我对移位加载策略使用加入,这样,当我加载转变NHibernate的自动执行一个LEFT JOIN来获得客户。 这对于附加员工的班次来说非常合适,但是有些班次还没有任何员工。
当我尝试访问该班次的员工时,一旦加载班次,它会导致另一个对数据库的SELECT(通过使用NHProfiler发现) 为什么会发生这种情况?
希望你有一个答案iam真的坚持这一点。
应该Employeeid为null而不是0吗? – Canton 2009-09-20 13:05:20