Kompilatorfel CS0135

"declaration1" står i konflikt med deklarationen "declaration2"

Kompilatorn tillåter inte att du döljer namn, vilket ofta leder till logikfel i koden.

Exempel

Följande exempel genererar CS0135:

// CS0135.cs  
public class MyClass2  
{  
   public static int i = 0;  
  
   public static void Main()  
   {  
      {  
         int i = 4;  
         i++;  
      }  
      i = 0;   // CS0135  
   }  
}  

Från C#-språkspecifikationen:

Det är ett fel för ett lokalt variabeldeklarationsutrymme och ett kapslat lokalt variabeldeklarationsutrymme som innehåller element med samma namn. Inom ett kapslat deklarationsutrymme går det därför inte att deklarera en lokal variabel eller konstant med samma namn som en lokal variabel eller konstant i ett omslutande deklarationsutrymme. Det är möjligt att två deklarationsutrymmen innehåller element med samma namn så länge inget av deklarationsutrymmena innehåller det andra.