我想要一份清单,重新排序并替换原件。
有一个更好的方法吗?目前我正在重新分配它,感觉很傻......
这是我的代码:
var viewModel = new ViewModel();
viewModel.Children = viewModel.Children.OrderBy(x => x.Name).ToList();
看来您正在寻找List<T>.Sort
方法。
viewModel.Children.Sort((a, b) => string.Compare(a.Name, b.Name));
尝试使用List<T>.Sort
方法代替。
List<T>
使用指定 的对整个元素进行排序System.Comparison<T>
。
viewModel.Children.Sort((a, b) => String.Compare(a.Name, b.Name))
试试这个lambda expressions
:
viewModel.Children.Sort((a, b) => String.Compare(a.Name, b.Name))
对于 IList 它将不起作用:
viewModel.Children = viewModel.Children.OrderBy(x => x.Name).ToList();