Вход на сайт
Сортируем?
416 просмотров
Перейти к просмотру всей ветки
Murr патриот
Сортируем?
Что-то у меня не получается отсортировать список проектов.
Дано: TSore : SortedSet<TProject>, который должен содержать упорядоченный список проектов.
using System;using System.Collections.ObjectModel;using System.Collections.Generic;namespace Data.CCScript.Comparer{internal class TProjectOrderComparer : IComparer<TProject>{const int EARLY = 1;const int EQUAL = 0;const int LATE = -1;// Projects should be ordered as following:// in order in which it should be build.// if a list of project references contain reference to the project// project in the reference list sould be build earlierint IComparer<TProject>.Compare(TProject a, TProject b){if (b.Guid == a.Guid){return EQUAL; // The same project}if (b.ProjectReferences.Contains(a)){return LATE; // 'b' going down}return EARLY;}}public class TStore : SortedSet<TProject>{public TStore() : base(new TProjectOrderComparer()){}}public class TProject{public TProject(){ProjectReferences = new Collection<TProject>();}public Guid Guid { get; set; }public ICollection<TProject> ProjectReferences { get; internal set; }}}
Может Я снова чего-то не понимаю, но конечный результат у меня не соответствует заданным критериям.
В аттаче - результат "сортировки".