在nHibernate的Criteria中编写子查询

2024-01-03

我已经在 Criteria 中阅读了有关子查询的内容,但我仍然无法正确掌握它。在这里我举一个例子,如果有人可以帮助我使用子查询来编写它,那就太好了。

假设我们有桌子

Employee{EmployeeId.(int),Name(string),Post(string),No_Of_years_working(int)}

现在我想要所有担任经理且工作时间不超过 10 年的员工。我知道我们可以在不使用子查询的情况下获得结果,但我想使用子查询只是为了了解它在条件中的工作原理。

那么,我如何使用子查询编写条件来获取这些员工。


嗯 - 代码应该是这样的:

DetachedCriteria dc = DetachedCriteria.For<Employee>()
.Add (Subqueries.PropertyIn("EmployeeId",
     DetachedCriteria.For<Employee>()
         .SetProjection(Projections.Property("EmployeeId"))
         .Add(Restrictions.Lt("No_Of_years_working", 10))
         .Add(Restrictions.Eq("Post", "Manager"))
);

希望这可以帮助。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在nHibernate的Criteria中编写子查询 的相关文章

随机推荐