Прочитать на английском

Поделиться через


Ошибка компилятора CS0243

Атрибут Conditional в методе "метод" недопустим, так как он является методом переопределения

Атрибут ConditionalAttribute не допускается для метода, помеченного переопределением ключевое слово. Дополнительные сведения см. в разделе "Знать, когда использовать переопределение" и "Новые ключевые слова".

Компилятор никогда не привязывается к переопределяющим методам. Он привязывается только к базовому методу, а среда CLR вызывает переопределение по мере необходимости.

Следующий код создает CS0243:

// CS0243.cs  
// compile with: /target:library  
public class MyClass  
{  
   public virtual void M() {}  
}  
  
public class MyClass2 : MyClass  
{  
   [System.Diagnostics.ConditionalAttribute("MySymbol")]   // CS0243  
   // remove Conditional attribute or remove override keyword  
   public override void M() {}  
}