Erro do compilador CS1023

A instrução inserida não pode ser uma declaração ou uma instrução rotulada

Uma instrução inserida, como as instruções após uma instrução if , não pode conter declarações nem instruções rotuladas.

Para resolver esse erro, encapsule a instrução inserida em chaves para criar uma instrução de bloco. No C#, ao contrário de C/C++, declarações variáveis e instruções rotuladas devem estar contidas em uma instrução de bloco para definir corretamente seu escopo.

O exemplo a seguir gera CS1023 duas vezes:

// 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  
   }  
}  

Exemplo – Código corrigido

Para corrigir esse erro, use chaves para criar uma instrução de bloco:

// 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  
      }
   }  
}