web-dev-qa-db-fra.com

Pourquoi System.Diagnostics.Debug.WriteLine ne fonctionne-t-il pas dans Visual Studio 2010 C #?

J'ai la ligne suivante dans mon code:

System.Diagnostics.Debug.WriteLine("Title:" + title + "title[top]: " + title[top] + "title[sub]: " + title[sub]);

Lorsque je débogue, je le vois aller sur cette ligne, mais quand je regarde la fenêtre de sortie dans Visual Studio 2010, je ne vois rien, même si elle s'affiche pour "Debug" et j'ai couru en utilisant "debug> run". Pourquoi?

28
user1464139

Vérifiez les éléments suivants -

  1. DEBUG le mode est sélectionné pendant le débogage
  2. Debug option est sélectionnée dans la fenêtre Sortie - enter image description here
  3. Voir si le point d'arrêt atteint Debug.WriteLine dans le code
  4. Insérer Debug.AutoFlush = true au début du code
  5. Essayez de vérifier si Platform for the solution est défini sur Any CPU et non x86 (ou x64).
  6. Aller aux propriétés du projet -> Web - Dans la section Débogueur, cochez l'option ASP.NET

Référence pour Point # 5 (Lire le commentaire, cela a fonctionné pour ce gars)

18
Parag Meshram

Pour moi, cela a résolu le problème:

System.Diagnostics.Trace.WriteLine("whatever");

(en utilisant Trace au lieu de Debug)

13
Al Lelopath

Dans votre fichier app.config, assurez-vous que vous n'avez pas de <clear/> élément dans vos écouteurs de trace.

Vous effacerez efficacement la liste des écouteurs de trace, y compris l'écouteur de trace par défaut utilisé pour les instructions de débogage.

Voici à quoi cela ressemblerait dans votre fichier app.config:

<system.diagnostics>
    <trace>
      <listeners>
          <!-- This next line is the troublemaker. If it is there delete it-->
          <clear/>
      </listeners>
    </trace>
  </system.diagnostics>
7
Rohit Vats

Pour moi, je devais faire cela pour résoudre le problème:

1. Open the project's property page
2. Under Build tab, check "Define DEBUG constant" and "Define Trace constant"

Voila!

4
JustAPup

J'ai eu le même problème. L'utilisation de Trace.WriteLine et la vérification de "Define DEBUG constant" n'ont pas fonctionné pour moi.

J'ai remarqué que les messages de sortie ont été trouvés dans la fenêtre Exécution, au lieu de la fenêtre Sortie.

Ensuite, j'ai décoché l'option "Rediriger tout le texte de la fenêtre de sortie vers la fenêtre immédiate" dans les outils et j'ai résolu mon problème.

0