Partager via


Modifier & Continuer (C#) : erreur 4005

La modification ou la suppression d'une instruction active figurant dans un initialiseur de champ empêche la session de débogage de se poursuivre tant que Modifier & Continuer est activé.

Cette erreur indique que vous avez essayé de modifier une instruction active dans un initialiseur de champ. Modifier & Continuer ne prend pas en charge les modifications apportées aux instructions actives pendant le débogage. Pour plus d'informations, consultez Active Statements et Champs (Guide de programmation C#).

Prenons le code suivant :

class Program

{

int a = 100;

static void Main()

{

Program p = new Program();

}

}

Si vous définissez un point d'arrêt sur int a = 100, déboguez le code et essayez de remplacer 100 par 50, l'erreur se produit.

Pour corriger ce problème

  • Exécutez le code pas à pas jusqu'à ce que l'instruction en cours ne se trouve plus dans l'initialiseur de champ.

    - ou -

    Annulez les modifications, puis continuez à déboguer sans les modifications.

    - ou -

    Terminez la session de débogage, apportez vos modifications, puis démarrez une nouvelle session de débogage.

Voir aussi

Référence

Modifications de code prises en charge (C#)

Modifier & Continuer (Visual C#)

Autres ressources

Erreurs et avertissements de Modifier & Continuer (C#)