У меня есть список, который мне нужно отсортировать по двум полям. Я попытался использовать OrderBy в LINQ, но это только позволяет мне указать одно поле. Я ищу список для сортировки по первому полю, а затем, если в первом поле есть какие-то дубликаты для сортировки по второму полю.
Например, я хочу, чтобы результаты выглядели так (отсортировано по фамилии, а затем по имени).
- Адамс, Джон
- Смит, Джеймс
- Смит, Питер
- Томпсон, Фред
Я видел, что вы можете использовать синтаксис SQL, чтобы выполнить это, но я ищу способ сделать это с помощью метода OrderBy.
IList<Person> listOfPeople = /*The list is filled somehow.*/
IEnumerable<Person> sortedListOfPeople = listOfPeople.OrderBy(aPerson => aPerson.LastName, aPerson.FirstName); //This doesn't work.