Я использую PredicateBuilder и LINQKit из Albahari для создания запроса LINQ, который имеет необязательные параметры, необязательный OrderBy, необязательный Skip () и необязательный Take ().
PredicateBuilder позволяет легко создавать дополнительные параметры, но у меня возникают проблемы с другими вещами.Чтобы упростить задачу:
Это работает
var query = this.MyContext.Things.AsExpandable.Where(predicate).OrderBy(s => s.Name);
return query.ToList();
Я хочу сделать что-то вроде этого, чтобы я мог обернуть OrderBy в if.Это не работает, однако, результаты не в порядке имен.
var query = this.MyContext.Things.AsExpandable().Where(predicate);
query.OrderBy(s => s.Name);
return query.ToList();
Может кто-то указать мне в правильном направлении?Я - конвертер из NHibernate и до сих пор вникну в LINQ.