Číst v angličtině

Sdílet prostřednictvím


Chyba kompilátoru CS0243

Podmíněný atribut není platný pro metodu, protože se jedná o metodu přepsání.

Atribut ConditionalAttribute není povolen pro metodu, která je označena klíčovým slovem přepsání. Další informace naleznete v tématu Znalost kdy použít přepsání a nová klíčová slova.

Kompilátor nikdy neváže k přepsání metod. Vytvoří vazbu pouze na základní metodu a modul CLR (Common Language Runtime) podle potřeby volá přepsání.

Následující kód vygeneruje 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() {}  
}