Вы уверены, что вам действительно нужен ORM?
В любом случае, есть 3 общие опции для запроса базы данных с использованием NHibernate:
- HQL .
- Критерии API .
- Linq.
Самый простой - 3, самый мощный - 1.
Но я не совсем понимаю природувашего вопроса, поскольку API запросов в NHiebrnate не являются взаимоисключающими , а скорее дополняют друг друга.
Таким образом, вы можете использовать любой из них в зависимости от ситуации :
- Для динамических запросов лучше всего подходит Criteria API.
- Для сложных и никогда не меняющихся - HQL.
- Для быстрых и простых - Linq.