#nhibernate #session
#nhibernate #сеанс
Вопрос:
Я, мягко говоря, новичок в NHibernate.
Я использую NHibernate 3.1 и пытаюсь реализовать общий репозиторий, используя общий метод запроса сеанса. Однако я не вижу его в моей Visual Studio IDE Intellisense. Я вижу только QueryOver, который, я не уверен, предназначен ли он для замены метода запроса. Если да, то почему они не оставили запрос, но с сообщением, указывающим, что он устарел в соответствии с соглашением?
Пожалуйста, кто-нибудь, помогите — я буду вечно благодарен.
Большое спасибо сообществу S.O.F.
Комментарии:
1. Извините, ребята. Разобрался с этим. Все, что мне нужно было сделать, это импортировать NHibernate. Пространство имен Linq. вкратце, вставка: использование NHibernate. Ошибка новичка Linq, но может кому-то помочь. Соответствующий код был: public IEnumerator<T> GetEnumerator() { возвращает Transact(() => Сеанс. Запрос<T>().Возьмите(1000). GetEnumerator()); }
Ответ №1:
Он не устарел. Это разные вещи. session.Query<T>()
позволяет использовать поставщика LINQ, хотя QueryOver
это другой API, также основанный на выражениях, но на самом деле более похожий на Criterions API.
Как вы уже выяснили, вам нужно открыть NHibernate.Пространство имен Linq для использования поставщика LINQ.
Комментарии:
1. Спасибо Маурисио за комментарии. Действительно, очень полезно.