Compiler Error CS0406
Collapse the table of content
Expand the table of content
The document is archived and information here might be outdated

Compiler Error CS0406

The class type constraint 'constraint' must come before any other constraints

When a generic type or method has a class type constraint, that constraint must be listed first. To avoid this error, move the class type constraint to the beginning of the constraint list.

The following sample generates CS0406.

// 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
© 2016 Microsoft