Bonjour à tous,

J'ai le bout de code suivant:
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
 
public interface IItem { }
public class MonObjet : IItem { }
 
public abstract class ItemCollection<TItem> 
    : Collection<TItem> where TItem : IItem
{
}
 
public class ObjetCollection : ItemCollection<MonObjet>
{
}
 
static class Program
{
    static void Main
    {
    ItemCollection<IItem> = new ObjetCollection();
    }
}
Le compilateur me retourne une erreur: impossible de caster.

Pourtant, mes 2 collections derivent l'une de l'autre, mes types paramètres derivent l'un de l'autre.

Je cherche une explication à celà.
Une idée??
Bruno