英語で読む

次の方法で共有


コンパイラの警告 (レベル 1) CS0672

メンバー 'member1' が古い形式のメンバー 'member2' をオーバーライドします。 Obsolete 属性を 'member1' に追加してください

コンパイラが override としてマークされたメソッドへの obsoleteを検出しました。 ただし、オーバーライド元のメソッド自体は obsolete とマークされていませんでした。 オーバーライド元のメソッドを呼び出すと、引き続き CS0612が生成されます。

メソッド宣言を確認し、メソッド (およびそのすべてのオーバーライド) を obsoleteとマークするかどうかを明示的に指定します。

次の例では CS0672 が生成されます。

// CS0672.cs  
// compile with: /W:1  
class MyClass  
{  
   [System.Obsolete]  
   public virtual void ObsoleteMethod()  
   {  
   }  
}  
  
class MyClass2 : MyClass  
{  
   public override void ObsoleteMethod()   // CS0672  
   {  
   }  
}  
  
class MainClass  
{  
   static public void Main()  
   {  
   }  
}