Я использовал обычный сеанс для загрузки некоторых элементов из базы данных через linq. Проблема в том, что он кеширует сущности, и нагрузка на память увеличивается излишне. Есть ли способ заменить сеанс сеансом без сохранения состояния без внесения множества изменений в код клиента?
Поддержка Linq для сеанса без сохранения состояния включена в версию 3.1.0. См. Примечания к выпуску: https://nhibernate.jira.com/browse/NH-2211
Невозможно использовать Linq с IStatelessSession.
Вы можете использовать все остальные методы запросов (Get, Criteria, HQL и SQL).
Обновление (2010-07-19): я думаю, что Стив может добавить это к провайдеру NH 3.x)
Включена ли ленивая загрузка?
У меня нет опыта работы с LINQ для NHibernate, но в моем приложении медленная загрузка имеет огромное значение для производительности.