创建排序表达式时遇到问题。
我有一个类型Expression<Func<Products, bool>>
的表达式,它已经包含一个查询表达式。
我想做查询排序,但没有成功。
下面,在CreateSortExpression方法中有一个错误:
private Expression<Func<Products, bool>> CreateOrderQuery(Expression<Func<Products, bool>> condition, descriptorOrder item)
{
condition= condition.AndAlso(CreateSortExpression(item.PropertyName));
return condition;
}
private Expression<Func<Products, bool>> CreateSortExpression(string p)
{
Expression<Func<Products, bool>> condition = products =>
p.OrderBy(products.Options.price);
return condition;
}
错误消息'System.Linq.Enumerable.OrderBy(System.Collections.Generic.IEnumerable,System.Func)'无法从用法中推断出来。尝试显式指定类型参数。
有没有人经历过这个可以帮助我? 感谢。
答案 0 :(得分:1)
您正在尝试构建一个表达式以传递给OrderBy()
您不想在该表达式中调用OrderBy()
;你会想要像p => p.Something