J'ai une UserEntity qui mappé comme et obtenu Impossible d'aller chercher plusieurs sacs. erreurFluent nhibernate mappent plusieurs tables
public UserEntityMap : ClassMap<UserEntity>
{
//Other properties
HasMany(x => x.Addresses).KeyColumn("User_id").Fetch.Join();
HasMany(x => x.Roles).KeyColumn("User_id").Fetch.Join();
}
Je veux obtenir les adresses et les rôles lorsque je crée une requête pour userentity. Que dois-je faire pour voir une sortie comme
Select * from UserEntity u
join Addresses a on u.id=a.User_id
join Roles r on u.id=r.User_id where u.id=?
Merci Radim. Devrais-je éviter d'utiliser Join sur le mapping? Est-il préférable d'utiliser JoinAlias lors d'une requête sur UserEntity. Comme votre exemple GetCats(), quand je vais avoir userlist je vais demander pour les enfants aussi ne vais-je pas? – eyildiz
Mon approche est - 1) joindre «many-to-one» (schéma en étoile), utiliser des projections (par exemple http://stackoverflow.com/q/24246277/1679310) 2) ** NE JAMAIS ** rejoindre 'one- to-many'. Utilisez des sous-requêtes pour filtrer les collections (par exemple http://stackoverflow.com/q/23772548/1679310) et laissez NHibernate les charger par lots ... –