Modifier & Continuer (C#) : erreur 4005
Mise à jour : novembre 2007
Message d'erreur
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é.
Editing or deleting an active statement in a field initializer will prevent the debug session from continuing while Edit and Continue is enabled
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 Instructions actives 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#)