Да, 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)