在Criterion中使用AliasToBeanResultTransformer时出错

时间:2011-05-13 20:11:37

标签: nhibernate-criteria

我正在尝试与一些提取一起进行一些分页,但结果会返回重复项。因此我添加了一个AliasToBeanResultTransformer,但后来我收到以下错误:

无法在“ForumThread”课程中找到属性“this”的setter

var crit = Session.CreateCriteria<ForumThread>()
                .Add(Expression.Eq("IsActive", true))
                .AddOrder(new Order("LastForumPost", false))
                .SetFirstResult((page - 1)*pageSize)
                .SetMaxResults(pageSize)
                .SetFetchMode("ForumPosts", FetchMode.Eager)
                .SetFetchMode("ForumTagRelations", FetchMode.Eager)
                .SetCacheable(true)
                .SetResultTransformer(new NHibernate.Transform.AliasToBeanResultTransformer(typeof (ForumThread)));
return crit.List<ForumThread>();

我可能会遗失什么?

1 个答案:

答案 0 :(得分:0)

为避免重复,您需要使用DistinctRootEntityResultTransformer,而不是AliasToBeanResultTransformer