Как использовать Linq с замком ActiveRecord
Я играю с Castle ActiveRecord и заметил, что загрузка включает в себя файл, Castle.ActiveRecord.Linq.dll
, Я не нашел никакой документации по использованию Linq с ActiveRecord, только некоторые старые сообщения в блоге.
Каков порядок использования? Является Castle.ActiveRecord.Linq
готов к использованию?
1 ответ
Да, Castle.ActiveRecord.Linq готов к производству. Он включен в последнюю версию ActiveRecord. Фактический поставщик Linq реализован в NHibernate.Linq.dll, ActiveRecord Linq dll представляет собой тонкий сквозной слой. Есть два основных способа его использования:
Сделайте ваши сущности наследовать от
ActiveRecordLinqBase<T>
затем запросить:var blogs = (from b in Blog.Queryable select b).ToList();
использование
ActiveRecordLinq.AsQueryable<T>
Например:var blogs = (from b in ActiveRecordLinq.AsQueryable<Blog>() select b).ToList();
Посмотрите на тесты для примера кода.
ОБНОВЛЕНИЕ: начиная с бета-версии ActiveRecord 3.0, Linq интегрирован в Castle.ActiveRecord.dll, а NHibernate.Linq.dll больше нет (интегрирован в NHibernate.dll с NHibernate 3)