У меня есть пример класса, содержащий две точки данных:Сортировка списка по свойству, а затем другой
public enum Sort { First, Second, Third, Fourth }
public class MyClass
{
public MyClass(Sort sort, string name) {
this.Sort = sort;
this.Name = name;
}
public Sort Sort { get; set; }
public string Name { get; set; }
}
Я ищу сортировать их в группы по их Sort
собственности, а затем в алфавитном порядке эти группы.
List<MyClass> list = new List<MyClass>() {
new MyClass(MyClass.Sort.Third, "B"),
new MyClass(MyClass.Sort.First, "D"),
new MyClass(MyClass.Sort.First, "A"),
new MyClass(MyClass.Sort.Fourth, "C"),
new MyClass(MyClass.Sort.First, "AB"),
new MyClass(MyClass.Sort.Second, "Z"),
};
Выход бы тогда: (показать Name
)
A
AB
D
Z
B
C
Я был в состоянии сделать это, используя foreach
для разделения элементов на множество мелких массивов (сгруппировано по перечислимому значение), но это кажется очень утомительным - и я думаю, что должно быть какое-то решение LINQ, о котором я не знаю.
Этот синтаксис недействителен. 'Select m' нужно разместить в конце, тогда это будет правильно. –
Спасибо, Ахмед, исправлено. Ошибка 3 утра – pdr