Comment définir des points d’arrêt conditionnels dans Visual Studio?

Existe-t-il un moyen simple de définir des points d’arrêt conditionnels dans Visual Studio?

Si je veux toucher un point d’arrêt uniquement lorsque la valeur d’une variable devient quelque chose, comment puis-je le faire?

Définissez un point d’arrêt comme d’habitude. Faites un clic droit dessus. Cliquez sur Condition.

Lorsque vous utilisez Express Edition, vous pouvez essayer ceci:

#if DEBUG if( fooVariable == true ) System.Diagnostics.Debugger.Break(); #endif 

Si l’instruction s’assure que dans la version release, le point d’arrêt ne sera pas présent.

Visual Studio fournit de nombreuses options pour les points d’arrêt conditionnels:

Pour définir l’un de ces vous

  1. Définir un sharepoint rupture
  2. Cliquez avec le bouton droit de la souris sur le point d’arrêt et sélectionnez une option dans le menu contextuel.

Ces options sont les suivantes:

  • Vous pouvez définir une condition basée sur une expression de code que vous fournissez (sélectionnez Condition dans le menu contextuel). Par exemple, vous pouvez spécifier que toto == 8 ou une autre expression.
  • Vous pouvez déclencher des points d’arrêt après avoir été frappés un certain nombre de fois. (sélectionnez Hit Count dans le menu contextuel). C’est une option amusante avec laquelle vous ne pouvez pas vous limiter à un certain nombre de hits, mais vous avez également des options pour d’autres scénarios. Je vous laisse le soin d’explorer les possibilités.
  • Vous pouvez définir des filtres sur l’ID de processus, l’ID de thread et le nom de la machine (sélectionnez Filtre dans le menu contextuel)

Juste une autre façon de le faire (ou si vous utilisez express) ajoutez la condition dans le code:

 if(yourCondition) { System.Diagnostics.Debugger.Break(); } 
  1. Définir le point d’arrêt sur la ligne
  2. Clic droit sur la balle rouge
  3. Choisissez le point d’arrêt conditionnel
  4. Condition d’installation
  1. Définissez un point d’arrêt comme d’habitude.
  2. Cliquez avec le bouton droit sur le marqueur de point d’arrêt
  3. Cliquez sur “Condition …”
  4. Ecrire une condition, vous pouvez utiliser des noms de variables
  5. Sélectionnez soit “Est vrai” ou “A changé”

Créez un point d’arrêt comme vous le feriez normalement, cliquez avec le bouton droit sur le point rouge et sélectionnez “condition”.

Ecrire la condition réelle peut être la partie délicate, donc j’ai tendance à

  1. Définir un point d’arrêt régulier
  2. Exécutez le code jusqu’à ce que le point d’arrêt soit atteint pour la première fois
  3. Utilisez la fenêtre Immédiat (Debug> Windows> Immediate) pour tester votre expression .
  4. Cliquez avec le bouton droit sur le point d’arrêt, cliquez sur Condition et collez-le dans votre expression .

Avantages de l’utilisation de la fenêtre Immédiat

  • Il a intellisense
  • Vous pouvez être sûr que les variables dans l’expression sont dans la scope lorsque l’expression est évaluée
  • Vous pouvez être sûr que votre expression retourne vrai ou faux

Cet exemple casse lorsque le code fait référence à une table nommée “Setting”

 table.GetTableName().Contains("Setting") 
  1. Définir un point d’arrêt comme d’habitude
  2. Cliquez avec le bouton droit sur le point d’arrêt et sélectionnez Condition
  3. Vous verrez une boîte de dialog qui dit “condition de point d’arrêt”
  4. Mettez une condition dans le champ, par exemple “i == 5”

Le point d’arrêt ne sera touché que lorsque j’aurai 5 ans.

Sur Visual Studio 6.0

Alt + F9 !!!

Définissez le breakpoint d’ breakpoint comme vous le faites normalement, cliquez avec le bouton droit sur le point d’arrêt et sélectionnez l’option condion et définissez votre condition.

Créer un point d’arrêt de fonction conditionnel

1) Dans la fenêtre Points d’arrêt, cliquez sur Nouveau pour créer un nouveau point d’arrêt.

2) Dans l’onglet Fonction, tapez Inverser pour fonction. Tapez 1 pour la ligne, tapez 1 pour le caractère, puis définissez la langue sur Basic.

3) Cliquez sur Condition et assurez-vous que la case à cocher Condition est sélectionnée. Tapez instr.length> 0 pour condition, assurez-vous que l’option est vrai est sélectionnée, puis cliquez sur OK.

4) Dans la boîte de dialog Nouveau point d’arrêt, cliquez sur OK.

5) Dans le menu Déboguer, cliquez sur Démarrer.