Lire en anglais

Partager via


Erreur du compilateur CS0406

La contrainte de type classe 'constraint' doit être placée avant toute autre contrainte

Quand un type ou une méthode générique possède une contrainte de type classe, cette contrainte doit figurer en premier. Pour éviter cette erreur, déplacez la contrainte de type classe au début de la liste des contraintes.

Exemple

L’exemple suivant génère l’erreur CS0406 :

C#
// CS0406.cs  
// compile with: /target:library  
interface I {}  
class C {}  
class D<T> where T : I, C {}   // CS0406  
class D2<T> where T : C, I {}   // OK