Запишите подзапрос в Критериях nHibernate

Я читал о подзапросе в Критериях, но я все еще не могу схватить его правильно. Здесь я беру один пример и если кто-то может помочь мне записать, что использование подзапрашивает, это будет большим.

Позволяет говорят, что у нас есть таблица

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

Теперь я хочу всех сотрудников, которые являются менеджерами и работающий меньше 10 лет. Я знаю, что мы можем получить результат, не используя подзапросы, но я хочу использовать подзапрос только, чтобы понять, как он работает в критериях.

Так, как я могу записать Критерии с помощью подзапроса для получения тех сотрудников.

7
задан Bipul 4 August 2017 в 05:05
поделиться

1 ответ

Ну, код должен быть примерно таким:

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"))
);

Надеюсь, это поможет.

12
ответ дан 6 December 2019 в 21:11
поделиться
Другие вопросы по тегам:

Похожие вопросы: