У меня есть этот запрос:
IList<Table1_name> ries = session.CreateQuery("from Table1_name where param1 = '30001'").List<Table1_name>>();
string s = ries[0].foo[0].someAttribute;
Между TABLE1 и TABLE2 есть связь между многими, TABLE3 - это таблица соединений.Классы, представляющие TABLE1 и TABLE2, содержат:
Table1_name.cs: public virtual IList<Table2_name> foo { get; set; }
Table2_name.cs: public virtual IList<Table1_name> foo { get; set; }
Проблема заключается в том, что он всегда возвращает пустую команду IList foo, хотя в базе данных есть данные.
Вывод профилировщика NHibernate выглядит правильно:
SELECT
...
p.someAttribute as nazov5_0_,
...
FROM TABLE3 r
left outer join TABLE2 p
on r.id = p.id
WHERE r.param1 = 30001 /* :p0 */
and ...[others conditions are also ok]
Но отображает количество строк, равное 0. И когда я помещаю это в sql commander, он возвращает правильныйданные!
Мне нужно несколько советов, где искать проблему.Может ли это быть вызвано какой-либо ошибкой в отображении nhibernate?Но он не возвращает никаких исключений при отображении .. свойства найдены, все остальное работает, только Count этого IList равен 0 в каждом случае ..