Fetch vs FetchMany в провайдере NHibernate Linq

NHibernate нетерпеливая загрузка может быть выполнена с помощью Fetch и FetchMany, как описано в NHibernate Linq Нетерпеливый Fetching в блоге Майка Хэдлоу.

в чем разница между этими двумя методами и при каких обстоятельствах будет использоваться?

1 ответов


Fetch следует использовать для ссылок и FetchMany для коллекций.

это особенно важно, потому что только FetchMany можно комбинировать с ThenFetchMany чтобы получить коллекции "внуков".

пример:

session.Query<User>()
       .FetchMany(u => u.Orders)
       .ThenFetchMany(o => o.OrderItems)