易于使用和高性能动态排序库支持类似 SQL 语法和嵌套/复杂的表达式,使用 System.Linq.Expression 动态生成快速比较器。
使用此库就可以使用文字的排序表达式对List进行排序 :
List<Person> person;
person.Sort("Name.Length, BirthDate DESCENDING");
还可以使用 LINQ 一样的 OrderBy 这样:
foreach (Person p persons.OrderBy ("BirthDate.Year,Name")
{
Console.WriteLine(p.Name) ;
}
主要特点:
1 、易于使用:重写了已经存在的扩展方法Sort和OrderBy
2、高性能:由于使用Linq的动态编译的表达式
3、支持arrays, List, IEnumerable, IQueryable和DataSet
4、支持所有的public 的属性和字段,包括Nullable类型
5、支持所有的引用类型(class)和值类型(struct)的字段和属性
6、支持嵌套的属性表达式,例如Mother.Name.Length
7、字符串大小写无关
8、开放式的设计:可以自己扩展Comparison delegates, IComparer 和非泛型的 IComparer 用于其它的排序场景。
本文来自云栖社区合作伙伴“doNET跨平台”,了解相关信息可以关注“opendotnet”微信公众号
相关资源:七夕情人节表白HTML源码(两款)