Bonjour
Voici un problème à la fois simple et compliqué (pour moi)
Je travail en Dot Net 2.0.
Je défini
et là à la compile, c'est le drame
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
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36 public class maclass :ImonInterface { } et public class maclassDeuxLeretour { private List<ImonInterface> _maliste= null; .... public void MaMethode(ref IList<ImonInterface> maliste) { _malist = malist; } .... } et enfin quelque part dans le code .... loin très loin .... maclassDeuxLeRetour _maclassDeuxLeRetour = new maclassDeuxLeRetour(); List<maclass> _maclass = new List<maclass>(); ... _maclass.Add(new maClass()); ... _maclassDeuxLeRetour .MaMethode (ref (IList<ImonInterface>)_maliste)
=>Mais pourquoi donc ?Argument '1'*: impossible de convertir de 'ref System.Collections.Generic.IList<Espace.maClass>' en 'ref System.Collections.Generic.IList<Espace.ImonInterface>'
Y a-t-il une manière de contourner le problème, voir une autre approche (si possible en évitant le code unsafe).
Je passe une List<ImonInterface> car l'object de la liste n'est pas forcement de type maClass mais il implémente toujours l'interface ImonInterface.
Merci de votre aide
Partager