我想热切地获取所有级别的子对象,直到持续数为0,但这只返回第一级。
在这个模式中,我不能急切地加载D和F,例如;
py> v = [ [ x, y ] for x in ['a','b','c'] for y in range(1,5) ]
py> [''.join([let, num]) for let, num in v]
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "<stdin>", line 1, in <listcomp>
TypeError: sequence item 1: expected str instance, int found
py> ['{}{}'.format(let, num) for let, num in v]
['a1', 'a2', 'a3', 'a4', 'b1', 'b2', 'b3', 'b4', 'c1', 'c2', 'c3', 'c4']
答案 0 :(得分:0)
我知道你正在使用Criteria,但是对于Linq你可以这样做:
using (var session = NHibernateHelper.OpenSession())
{
return session.Query<Foo>()
.Fetch(x => x.B)
.ThenFetch(x => x.D)
.Fetch(x => x.B)
.ThenFetch(x => x.F)
.Fetch(x => x.C)
.Fetch(x => x.E)
.Fetch(x => x.G)
.ToList();
}
但是,根据您的数据模型的样子,这可能不是表现最好的方式。