Сортировать ресурсы по имени
Contents
[
Hide
Show
]Сортировка ресурсов по имени
Aspose.tasks для .net позволяет сортировать ресурсы проекта на основе различных областей, включая их имена. Это руководство демонстрирует, как сортировать ресурсы по имени, используя пользовательский сравнитель.
Реализация пользовательского сравнения
Чтобы сортировать ресурсы по имени, создайте класс, который реализует интерфейс icomparer <resource>
1private class RscNameComparer : IComparer<Resource>
2{
3 public int Compare(Resource x, Resource y)
4 {
5 if (string.IsNullOrEmpty(x.Get(Rsc.Name)))
6 {
7 return 1;
8 }
9
10 if (string.IsNullOrEmpty(y.Get(Rsc.Name)))
11 {
12 return -1;
13 }
14
15 return x.Get(Rsc.Name).CompareTo(y.Get(Rsc.Name));
16 }
17}
Loading and Sorting Resources
Once the comparer is defined, you can load a project and sort its resources:
1Project project = new Project("New Project.mpp");
2
3List<Resource> resources = project.Resources.ToList();
4resources.Sort(new RscNameComparer());
5
6foreach (Resource resource in resources)
7{
8 Console.WriteLine(resource);
9}
This approach ensures that resources are listed in alphabetical order by their names, while handling cases where the name field is missing or empty.