开发者

How to use Linq with Castle ActiveRecord

开发者 https://www.devze.com 2023-01-01 22:38 出处:网络
I am playing around with Castl开发者_运维知识库e ActiveRecord and noticed that the download included the file, Castle.ActiveRecord.Linq.dll. I haven\'t found any documentation for using Linq with Acti

I am playing around with Castl开发者_运维知识库e ActiveRecord and noticed that the download included the file, Castle.ActiveRecord.Linq.dll. I haven't found any documentation for using Linq with ActiveRecord, only some old blog posts.

What is the usage pattern? Is Castle.ActiveRecord.Linq ready for production use?


Yes, Castle.ActiveRecord.Linq is production ready. It's included in the latest ActiveRecord release. The actual Linq provider is implemented in NHibernate.Linq.dll, the ActiveRecord Linq dll is a thin pass-through layer. There are basically two ways to use it:

  1. Make your entities inherit from ActiveRecordLinqBase<T>, then to query:

    var blogs = (from b in Blog.Queryable select b).ToList();
    
  2. Use ActiveRecordLinq.AsQueryable<T>, e.g.:

    var blogs = (from b in ActiveRecordLinq.AsQueryable<Blog>() select b).ToList();
    

Look at the tests for some sample code.

UPDATE: as of ActiveRecord 3.0 beta, Linq is integrated into Castle.ActiveRecord.dll, and NHibernate.Linq.dll is no more (integrated into NHibernate.dll as of NHibernate 3)

0

精彩评论

暂无评论...
验证码 换一张
取 消