Bonjour,

je suis un peu perdu concernant l'appel de fonction d'une classe hérité.

j'ai une classe de base contenant une fonction
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
 
    public abstract class SCCMObject : IResultObject
    {
............
 public static virtual void SetObjectPath(List<SCCMObject> lstToCompare, WqlConnectionManager connection)
        {....}
 
}
Je possède une classe hérité et je souhaite appeler la fonction SetObjectPath qui appartient à la classe SCCMObject

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
 
    public class SCCMAdvertisement : SCCMObject
    {
.....
 
        public static List<SCCMAdvertisement> GetAllAdvertisements(WqlConnectionManager connection)
        {
            SCCMAdvertisement objRet = new SCCMAdvertisement();
            List<SCCMAdvertisement> lstAdvlReturn = new List<SCCMAdvertisement>();
            foreach (IResultObject resObj in objRet.GetAllObjects(connection))
            {
                SCCMAdvertisement tmp = new SCCMAdvertisement(resObj);
                lstAdvlReturn.Add(tmp);
            }
              //Appel de ma fonction hérité
             SetObjectPath(lstAdvlReturn, connection);
            return lstAdvlReturn;
        }
}
cependant je me retrouve avec le message d’erreur suivant avant la compilation

Erreur 2 La méthode surchargée correspondant le mieux à '.Objects.SCCMObject.SetObjectPath(System.Collections.Generic.List<Objects.SCCMObject>, Microsoft.ConfigurationManagement.ManagementProvider.WqlQueryEngine.WqlConnectionManager)' possède des arguments non valides

Erreur 3 Argument 1*: impossible de convertir de 'System.Collections.Generic.List<Objects.SCCMAdvertisement>' en 'System.Collections.Generic.List<Objects.SCCMObject>'
En gros je comprend que je dois fournir une liste de SCCMObject au lieu d'une liste de SCCMAdvertisement .
Mais pour moi un SCCMAdvertisement "est" un SCCMObjet. Y'a il une faute dans ma déclaration ou ma logique est elle mauvaise ?
Merci pour votre aide