NHibernate - сверление вниз от корня аггрейта - PullRequest
0 голосов
/ 15 мая 2009

Учитывая совокупный корень X, который имеет много Y, и Y, который имеет много Z ...

Как я могу развернуть ассоциации и выбрать только те X, чьи Z имеют определенное значение свойства?

IList Xs = Session.CreateCriteria (typeof (X)) .CreateAlias ​​("Ys", "Y") .CreateAlias ​​("Y.Zs", "Z") .Add (Expression.Eq ("Z.Property", 1)) .List ();

Это приводит к исключению PropertyAccessException, и я понятия не имею, почему.

Загрузка всех X и проверка их свойств Z были бы избыточными.

1 Ответ

1 голос
/ 17 мая 2009

Я опробовал его, и в моей тестовой настройке он работает безупречно. PropertyAccessExceotion может быть о недоступном установщике или несоответствии типов, когда свойство установлено. Если бы вы опубликовали некоторый код сопоставления и сущности, это могло бы помочь.

...