Я знаю, что LINQ-to-NHibernate в настоящее время не поддерживает подзапросы (http://ayende.com/Blog/archive/2009/07/26/nhibernate-linq-1.0-released.aspx).
Есть ли обходной путь?
linq-to-nh поддерживает подзапросы в предложении where. Это именно то, что мне было нужно. Я был не прав с моим предыдущим ответом. Оба Мартинболанд и Стефан Штайнеггер были правы. Чтобы увидеть, как вы выполняете подзапросы в linq-to-nh, смотрите this и this . Есть также ограничения .
Я думаю, что обходной путь - просто использовать HQL или критерии.
Я использовал запрос LINQ из двух частей в качестве обходного пути. LINQ-to-NHibernate для несвязанного раздела подзапроса и LINQ-to-Object для подзапроса, связанного с разделом запроса. Пожалуйста, смотрите http://afsharm.blogspot.com/2010/03/dealing-with-subqueries-in-linq-to.html для более подробной информации.
Я не работал с nhibernate для linq, но я уверен, что вы можете перевести практически любой подзапрос в объединение