Partager via


Modifier & Continuer (C#) : erreur 4027

La mise à jour d'une instruction de bloc autour d'une instruction active empêche la session de débogage de se poursuivre tant que Modifier & Continuer est activé.

Cette erreur se produit dans les circonstances suivantes :

  • Vous tentez de modifier une partie d'une instruction foreach, une instruction using, une instruction lock ou une instruction fixed, lorsque le pointeur d'exécution se trouve à l'intérieur du bloc modifié.

  • Vous tentez d'ajouter un catch à un try lorsque le pointeur d'exécution se trouve à l'intérieur du bloc modifié.

  • Vous tentez de remplacer un try/catch par un try/finally lorsque le pointeur d'exécution se trouve à l'intérieur du bloc modifié.

Pour plus d'informations, consultez Active Statements.

Prenons le code suivant :

class Program

{

   static void Main()

   {

      using (System.IO.StreamReader file = System.IO.File.OpenText(@"example.txt"))

      {

         System.Console.WriteLine(file.ReadLine());

      }

   }

}

Si vous définissez un point d'arrêt sur l'appel WriteLine et commencez à déboguer, puis essayez de modifier le nom du fichier texte dans l'instruction using, cette erreur se produit.

Pour corriger cette erreur

  • Choisissez Annuler dans le menu Déboguer pour annuler les modifications. Vous pouvez apporter des modifications ultérieurement lorsque l'instruction n'est plus active.

    - ou -

  • Dans le menu Déboguer, cliquez sur Arrêter le débogage, apportez vos modifications, puis démarrez une nouvelle session de débogage.

Voir aussi

Référence

foreach, in (référence C#)

using (référence C#)

try-catch (référence C#)

try-finally (référence C#)

lock, instruction (référence C#)

Modifications de code prises en charge (C#)

Modifier & Continuer (Visual C#)

Autres ressources

Erreurs et avertissements de Modifier & Continuer (C#)