Jer*_*Kur 3 c# linq linq-to-entities
我需要在Linq(to Entity)语句中支持可变数量的Orderby术语.也就是说,我的函数将接受数据应该在其上排序的属性列表.属性可以具有升序或降序排序.处理构造Linq查询的最佳方法是什么?
谢谢!
你应该能够沿着这些方向做点什么:
public IEnumerable<MyType> DoSomething(params Expression<Func<MyType,object>>[] properties)
{
var query = // create LINQ query that returns IQueryable<MyType>
query = query.OrderBy(properties.First());
foreach (var property in properties.Skip(1))
{
query = query.ThenBy(property);
}
}
…
var results = DoSomething(() => x.Age, () => x.Height, () => x.LastName);
Run Code Online (Sandbox Code Playgroud)
您需要处理指定少于2个属性的情况.