Как вы, возможно, знаете, при использовании NHibernate вы должны подходить к работе с данными совершенно по-другому. У вас больше нет «сырых данных», поступающих из БД, как в ADO.NET; скорее вы работаете с ОО представлением ваших данных.
Вы не запрашиваете базу данных / таблицы в NHibernate, но вместо этого вы запрашиваете свои сущности.
Я думаю, что решение вашей проблемы можно найти в прогнозах.
С помощью проекции вы можете создать свой запрос в NHibernate (используя HQL или ICriteria API).
Но перед выполнением запроса через проекцию вы указываете, какие свойства вас интересуют.
Затем NHibernate выполнит запрос, который извлекает только эти свойства. Это также означает, что на самом деле возвращаются не сущности. Это скорее DTO, которое возвращается.
Итак, вам нужно будет создать класс, который будет действовать как «DTO». Он имеет только те свойства, которые вас интересуют, и вам также нужно «импортировать» этот класс, чтобы он был известен NHibernate.
Некоторое время назад я объяснил на SO, как вы можете использовать проекции. Его можно найти здесь