public IQueryable<Offer> GetList() { return from o in db.Offers where o.Status==1 orderby o.OfferId descending select o; }
其中的o.Status==1怎么通过方法参数传递?GetList(where)
public IQueryable<Offer> GetList(int? Status) { var q = from o in db.Offers orderby o.OfferId descending select o; if (Status.HasValue) { q =q.Where(o=>o.Status == Status.Value); } return q ; }
。。额,有无通用办法,如果传递的是 o.Title='abc'呢?
晕死 传递lambda表达式不就ok了
使用表达式树的方法很通用,参见http://msdn.microsoft.com/zh-cn/library/vstudio/bb882637.aspx