私はリストを取り、それを並べ替え、オリジナルを置き換えたいと思います。
これを行うより良い方法はありますか?現在、私はそれを再割り当てしていますが、ばかげていると感じています...
これが私のコードです:
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();