У меня есть объект график, который выглядит следующим образом:Multi-таблица NHibernate запрос
class A()
{
int id;
IEnumerable<B> bees;
}
class B()
{
int id;
A a;
C c;
}
class C()
{
int id;
D d;
IEnumerable<B> bees;
}
class D()
{
int id;
IEnumerable<C> cees
}
Что бы разумный подход для построения запроса, который:
возвращает список из типов, где они содержат D по цепочке с определенным идентификатором?
Я использую NH3, поэтому могу использовать любой из техников запроса. Я пробовал несколько разных подходов, но в каждом случае попал, казалось бы, в тупики. У меня есть решение, работающее с коллекциями памяти, но, очевидно, это не идеально, я хочу, чтобы работа была выполнена на сервере БД.
Ничего себе, это было просто. Не совсем уверен, в какую путаную дорогу я направился. Вы бы не узнали, есть ли простой способ вернуть счет b (или c's - тот же номер), который свяжет их, не так ли? – UpTheCreek
Если вы имеете в виду глобальное число, то используйте select count (different b.id) из A a inner join a.bees b inner join b.c c где c.d.id =: theSearchDId. Если вы имеете в виду количество b на a, тогда используйте select a.id, count (distinct b.id) из A внутреннее соединение a.bees b внутреннее соединение bc c, где cdid =: theSearchDId group by a.id –
блестящий - благодаря – UpTheCreek