Chyba kompilátoru CS1023

Vložený příkaz nemůže být deklarací ani příkazem označeným popiskem.

Vložený příkaz, například příkazy následující za příkazem if , nesmí obsahovat deklarace ani popisky příkazů.

Pokud chcete tuto chybu vyřešit, zabalte vložený příkaz do závorek a vytvořte příkaz bloku. Na rozdíl od jazyka C/C++ musí být deklarace proměnných a příkazy označené v jazyce C# obsažené v příkazu bloku, aby bylo možné správně definovat jejich obor.

Následující ukázka vygeneruje CS1023 dvakrát:

// CS1023.cs  
public class a  
{  
   public static void Main()  
   {  
      if (1)  
         int i;      // CS1023, declaration is not valid here  

      if (1)  
         xx : i++;   // CS1023, labeled statement is not valid here  
   }  
}  

Příklad – opravený kód

Pokud chcete tuto chybu opravit, vytvořte příkaz bloku pomocí složených závorek:

// CS1023 - Fixed.cs  
public class a  
{  
   public static void Main()  
   {  
      if (1)  
      {
         int i;      // Fixed: declaration is now in a block statement  
      }

      int j = 0;
      if (1)  
      {
         xx : j++;   // Fixed: labeled statement is now in a block statement  
      }
   }  
}