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#)