更新 : 2007 年 11 月
エラー メッセージ
クラス型制約 '制約' は、他の制約の前に指定されなければなりません。
ジェネリック型またはジェネリック メソッドの型制約としてクラスが指定されている場合、クラスを制約の最初に指定する必要があります。このエラーを回避するには、クラスの型制約を、制約の先頭に移動します。
使用例
次の例では 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