NHibernate не учел объединить 3 таблицы - PullRequest
1 голос
/ 06 июня 2011

У меня есть 3 объекта, настроенные в nhibernate, пользователь , альбом , фото . Пользователь HasMany Альбомы Альбом HasMany Photo

Я пытаюсь написать запрос в NHibernate, который в значительной степени выполняет следующий SQL-запрос. Я хочу, чтобы результат был List<Photo>

Может кто-нибудь дать мне предложение о том, как это можно сделать?

спасибо

select p.* from UserTbl u
Left outer join Album a
on u.Id = a.UserId
left outer join Photo p
on a.Id = p.AlbumId
where u.Email = 'myemail@email.com'

1 Ответ

1 голос
/ 07 июня 2011

Не понимаю, зачем вам нужны левые соединения, если вы начинаете с User и получаете Photo.

Одна возможность:

IList<Photo> results =
    session.Query<Photo>()
           .Where(x => x.Album.User.Email = 'myemail@email.com')
           .ToList();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...