我有一个类PropertyDetails:
public class PropertyDetails { public int Sequence { get; set; } public int Length { get; set; } public string Type { get; set; } }
我正在创建一个PropertyDetails列表
List<PropertyDetails> propertyDetailsList=new List<PropertyDetails>();
我想通过PropertyDetails.Sequence对这个列表进行排序.
欢迎Linq解决方案.
解决方法
如果要对现有的列表进行原位排序,可以使用
Sort
方法:
List<PropertyDetails> propertyDetailsList = ... propertyDetailsList.Sort((x,y) => x.Sequence.CompareTo(y.Sequence));
如果要创建列表的新的排序副本,则可以使用LINQ的OrderBy
方法:
List<PropertyDetails> propertyDetailsList = ... var sorted = propertyDetailsList.OrderBy(x => x.Sequence).ToList();
(如果您不需要结果作为具体的列表< T>则可以省略最终的ToList调用.)