ICriteria crit = session.CreateCriteria(typeof(User));
DetachedCriteria userIdsForRoles = DetachedCriteria.For(typeof(User))
.SetProjection(Projections.Distinct(Projections.Property("Id")))
.CreateCriteria("Roles")
.Add(Expression.Eq("role.Id", roleId.Value));
crit.Add(Subqueries.PropertyIn("Id", userIdsForRoles));
本文介绍了一种使用 NHibernate 框架进行复杂用户角色查询的方法。通过 DetachedCriteria 和 Projections 实现了对用户 Id 的唯一性筛选,并进一步关联角色信息完成查询。此方案适用于需要高效获取具有特定角色的用户列表的应用场景。

1082

被折叠的 条评论
为什么被折叠?



