NHibernate - 从聚合根向下钻取

时间:2009-05-15 16:19:06

标签: nhibernate aggregateroot

给定一个聚合根X,它有许多Y,而Y有许多Z ...

如何深入查看关联并仅选择那些Z具有特定属性值的X?

IList Xs = Session.CreateCriteria(typeof(X))                     .CreateAlias(“Ys”,“Y”)                     .CreateAlias(“Y.Zs”,“Z”)                     .Add(Expression.Eq(“Z.Property”,1))                 .LIST();

执行此操作会导致PropertyAccessException,我不知道为什么。

加载所有X并测试它们的Z属性将是非常多余的。

1 个答案:

答案 0 :(得分:1)

我已经尝试过了,在我的测试设置中它完美无瑕。设置属性时,PropertyAccessExceotion可以是不可用的setter或类型不匹配。如果您要发布一些映射和实体源代码,它可能会有所帮助。