我的博客
个人资料:
AlanThinker
AlanThinker@stk.me

NHibernate中使用dynamic linq的方法

软件开发 发表时间:2016-10-23 更新时间:2016-11-28

当前 MyNHibernate 项目中已经添加了 System.Linq.Dynamic.DynamicQueryable 类.
添加 using System.Linq.Dynamic 就可以使用  dynamic linq了.

例子:
var students = session.Query<Student>().OrderBy("Name").ToList();                

students = session.Query<Student>()
    .Where(x => x.Name.ToLower().Like("%abc%"))
    .OrderBy("Teacher.Name desc, Name asc")
    .ToList();

students = session.Query<Student>()
   .Where(x => x.Name.ToLower().Like("%abc%"))
   .ProcessOrderbyAndPager("Teacher.Name","desc","Name","asc",20,5)
   .ToList(); 

//这不是Nhibernate的例子. 但使用方法应当类似.                                     
var query = db.Customers.Where("City == @0 and Orders.Count >= @1", "London", 10).
    OrderBy("CompanyName").
    Select("New(CompanyName as Name, Phone)");

  
IP Address: 43.129.217.254