Хейнеси - судя по вашему комментарию к посту Винни, я думаю, что вы упускаете его точку зрения ... [Я не представляю это как ответ на ваш вопрос напрямую, я просто уточняю точку зрения Винни, чтобы прояснить ситуацию возможная путаница в этом отношении.]
Рассмотрим этот объект:
public class Person
{
public string FirstName;
public string MiddleInitial;
public string LastName;
public DateTime DateOfBirth { get; set; }
public int Age
{
get
{
return (int)DateTime.Today.Subtract(DateOfBirth).TotalDays / 365;
}
}
}
Теперь предположим, что у меня есть список людей, который называется Люди
var people = new List<Person>();
И в моем списке целая группа людей.
var sortedByLastName = people.OrderBy(o => o.LastName);
var sortedByFirstName = people.OrderBy(o => o.FirstName);
var sortedByAge = people.OrderBy(o => o.Age);
var sortedByAgeDesc = people.OrderByDescending(o => o.Age);
var sortedByLastThenFirst = people.OrderBy(o => o.LastName).ThenBy(o => o.FirstName);
Это для сложных объектов. Если у нас есть список некоторого примитивного типа, например строка:
var strings = new List<string>();
Я хочу отсортировать их на основе самих себя, т.е. не по какому-либо свойству моего объекта
var sorted = strings.OrderBy(s => s);
Это будет сортировать по объекту. Вы также можете использовать ту же идею, если вы сортируете сложные объекты, которые реализуют IComparable для сортировки по их компаратору по умолчанию.
EntitySet может быть отсортирован аналогичным образом, либо для примитивного типа, либо для сложного объекта.