У меня есть список объектов, и я хочу отсортировать его по идентификатору объекта? - PullRequest
1 голос
/ 16 февраля 2012

У меня есть список объектов, и я хочу отсортировать его по идентификатору объекта, тогда вся информация должна быть записана в файл?[c #]

Я не хочу, чтобы объекты печатались. Я просто хочу метод, который сортирует список, чтобы я мог затем вызвать метод Sort и использовать мой класс Serialize, который поместит отсортированный список вфайл.

Если вам нужен любой другой код, пожалуйста, дайте мне знать.

Заранее спасибо.

Это мой класс, который создает список, чтобы я мог поместить объектыит.

[Serializable]
class ListOfClasses
{

     public List<Classes> fitnessClasses { get; set; }
     public ListOfClasses()
    {
        fitnessClasses = new List<Classes>();  
    }

     public void DeleteClass(Classes c)
     {
         fitnessClasses.Remove(c);
     }

     public void AddClass(Classes c)
     {
         fitnessClasses.Add(c);
     }

Ответы [ 3 ]

1 голос
/ 16 февраля 2012

Вот пример, предполагая, что класс Classes имеет свойство ID:

fitnessClasses.Sort((a, b) => a.ID.CompareTo(b.ID));
0 голосов
/ 16 февраля 2012

Используйте любой из этих методов:

  1. Сортировка с использованием LINQ

    IEnumerable<Class> sortedClasses = 
        from fitnessClass in fitnessClasses
        orderby fitnessClass.ID
        select fitnessClass;
    
  2. Сортировка с использованием методов расширения в System.Linq.Enumerable

    IEnumerable<Class> sortedClasses = 
        fitnessClasses.OrderBy(fitnessClass => fitnessClass.ID);
    
  3. Используйте метод Sort в классе List, который фактически изменит порядок элементов в списке.

    fitnessClasses.Sort( 
        (fc1, fc2) => Comparer<int>.Default.Compare(fc1.ID, fc2.ID) );
    
0 голосов
/ 16 февраля 2012

Вы можете использовать:

fitnessClasses.OrderBy(item => item.ID);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...