web-dev-qa-db-fra.com

Fetch vs FetchMany dans le fournisseur NHibernate Linq

Le chargement rapide de NHibernate peut être effectué en utilisant Fetch et FetchMany, comme décrit dans NHibernate Linq Eager Fetching sur le blog de Mike Hadlow.

Quelle est la différence entre ces deux méthodes et dans quelles circonstances chacune serait-elle utilisée?

73
Simon

Fetch doit être utilisé pour les références et FetchMany pour les collections.

Ceci est particulièrement important car seul FetchMany peut être combiné avec ThenFetchMany pour récupérer les collections "petits-enfants".

Exemple:

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