c# - 如何将 Linq 与 CaSTLe ActiveRecord 一起使用

标签 c# .net nhibernate orm castle-activerecord

我正在使用 CaSTLe ActiveRecord 并注意到下载包含文件 CaSTLe.ActiveRecord.Linq.dll。我还没有找到任何将 Linq 与 ActiveRecord 结合使用的文档,只有 some old blog posts .

使用模式是什么? CaSTLe.ActiveRecord.Linq 是否已准备好用于生产?

最佳答案

是的,CaSTLe.ActiveRecord.Linq 已准备就绪。它包含在最新的 ActiveRecord 版本中。实际的 Linq 提供程序在 NHibernate.Linq.dll 中实现,ActiveRecord Linq dll 是一个薄的传递层。基本上有两种使用方法:

  1. 让您的实体继承自 ActiveRecordLinqBase<T> ,然后查询:

    var blogs = (from b in Blog.Queryable select b).ToList();
    
  2. 使用 ActiveRecordLinq.AsQueryable<T> ,例如:

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

查看tests一些示例代码。

更新:从 ActiveRecord 3.0 beta 开始,Linq 集成到 CaSTLe.ActiveRecord.dll 中,而 NHibernate.Linq.dll 不再存在(从 NHibernate 3 开始集成到 NHibernate.dll 中)

关于c# - 如何将 Linq 与 CaSTLe ActiveRecord 一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2967777/

相关文章:

C# - 当应用程序使用另一种语言时获取英语异常消息?

c# - 如何在 DataReader 上实现 Peek() 函数?

c# - Visual Studio 在构建期间编译 WPF 应用程序两次

nhibernate - nHibernate 中的复杂投影入门

c# - Fluent Nhibernate 与 MySQL 的连接字符串

c# - WPF+Caliburn.Micro : ComboBox and ListBox not updating with dictionary properly

C# 返回类型推断不好的做法?

c# - 将 OnClick 事件添加到 ASP.NET 控件

c# - 如何让 TagLib# 处理扩展名错误的文件?

mysql - Hibernate 位置参数不存在 : 1 in query