Trier les ressources par son nom

Trier les ressources par nom

Aspose.tasks pour .NET permet de tri les ressources du projet en fonction de divers domaines, y compris leurs noms. Ce guide montre comment trier les ressources par leur nom à l’aide d’un comparateur personnalisé.

Implémentation d’un comparateur personnalisé

Pour trier les ressources par nom, créez une classe qui implémente l’interface ICOMPARER <RESRESSE>:

 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}

Cette approche garantit que les ressources sont répertoriées par ordre alphabétique en fonction de leurs noms, tout en gérant les cas où le champ de nom est manquant ou vide.