2010-03-18 3 views
0

J'ai une association simple à multiple dans mon modèle. La classe parente a une collection d'enfants. Dans les fichiers de mappage, l'association est un-à-plusieurs, impatiente-chargée, en utilisant fetchmode.join. Cela fonctionne bien, mais comment puis-je écrire une requête de critères mais pas déclencher le chargement de la collection enfant? En d'autres termes, je veux interroger le parent et ne pas le faire générer la jointure dans le sql résultant. J'ai essayé de mettre le mode fetch en mode paresseux, mais dans ce cas Nhibernate génère deux requêtes séparées. Je ne veux pas du tout que la table pour enfant soit interrogée.Nhibernate Criteria Ignore Child Collection

Répondre

1

Vous pouvez utiliser SetFetchMode dans l'API Criteria mais il n'y a aucun FetchMode qui désactivera le chargement impatient. Si vous vous joignez à une relation de clé primaire/étrangère et que la taille de la collection est raisonnable, je ne m'en soucierais pas. Si ce n'est pas le cas, vous devrez probablement passer à la charge paresseuse de la collection.

Questions connexes