Bonjour tout le monde,

Je poste ici car actuellement, je ne comprends pas vraiment un principe...

Je vous pose l'architecture
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
IInterface
{
 string Name {get;set;}
}
 
Classe : IInterface
{
 string Name {get;set;}
}
Nous somme d'accord que faire IInterface myClasse = new Classe(); est possible.
Cependant, lorsque je fais:

List<IInterface> liste = new List<Classe>(); cela n'est pas possible...
il faut soit faire un cast ou soit passé par une propriété.

Donc je m'en remets à vous, pourquoi ce comportement?
Merci de votre aide