Partager via


Modifier & Continuer (C#) : erreur 4029

La modification d'une méthode dans le contexte d'un type générique 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 méthode, générique ou pas, une propriété, un indexeur, un événement, un opérateur, un constructeur ou un destructeur d'un type générique. Modifier & Continuer ne prend pas en charge ce type de modification pendant le débogage.

Prenons le code suivant :

static class Utils<T> where T: System.IComparable

{

   public static T Max(T item1, T item2)

   {

      if (item1.CompareTo(item2) > 0)

         return item1;

      return item2;

   }

}

class Program

{

   static void Main(string[] args)

   {

      int max = Utils<int>.Max(10, 20);

   }

}

Si vous ajoutez un point d'arrêt sur la ligne if (item1.CompareTo(item2) > 0), puis démarrez le débogage et tentez de remplacer > 0 par >= 0, cette erreur se produit.

Pour corriger cette erreur

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

    - ou -

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

Voir aussi

Référence

Génériques (guide de programmation C#)

Modifications de code prises en charge (C#)

Modifier & Continuer (Visual C#)

Autres ressources

Erreurs et avertissements de Modifier & Continuer (C#)