在NHibernate Linq提供程序中获取vs FetchMany
NHibernate预先加载可以使用Fetch
和FetchMany
,如NHibernate Linq Eager在Mike Hadlow的博客上的描述。
这两种方法之间有什么区别,在什么情况下都会使用?
Fetch
应该用于引用,而FetchMany
用于集合。
这是特别重要的,因为只有FetchMany
可以和ThenFetchMany
结合来获取“孙子”集合。
例:
session.Query<User>() .FetchMany(u => u.Orders) .ThenFetchMany(o => o.OrderItems)