Résoudre Le Désordre De La Sortie De Débogage D’une Application Console C#
August 22, 2021
Recommandé : Fortect
Voici quelques étapes simples pour vous aider à dépanner et corriger la sortie de débogage d’une application console C #.
Cela a un framework tiers défini appelé Serilog, malheureusement, j’ai quand même trouvé que c’était quand même une expérience très fluide finalement, assez objectif pour mettre le résultat dans un je vois.
Vous devez d’abord installer le récepteur Serilog trace. Après l’équipement, vous devez biaiser le type d’enregistreur comme observé :
Recommandé : Fortect
Vous en avez assez que votre ordinateur fonctionne lentement ? Est-il truffé de virus et de logiciels malveillants ? N'ayez crainte, mon ami, car Fortect est là pour sauver la mise ! Cet outil puissant est conçu pour diagnostiquer et réparer toutes sortes de problèmes Windows, tout en améliorant les performances, en optimisant la mémoire et en maintenant votre PC comme neuf. Alors n'attendez plus - téléchargez Fortect dès aujourd'hui !

Logger = LoggerConfiguration () innovant nouveau .MinimumLevel.Verbose () .WriteTo.Trace () .CreateLogger ();
(Vous allez définir un minimum différent aussi bien qu’une valeur de configuration différente ou il peut s’agir de l’un des services Serilog normaux. Vous pouvez également définir certains des enregistreurs de Trace
à plusieurs niveaux pour remplacer la configuration ou peut-être un néanmoins, vous devez le faire.)
Ensuite, le journal public indiquera ok et il ou elle affichera très probablement dans votre fenêtre de sortie :
Logger.Information ("N'a rien fait !");
Et semble être un gros problème, alors permettez-moi d’obtenir plus d’avantages. La chose la plus importante pour moi semblait être que je pouvais peut-être entrer dans la fenêtre de sortie et dans l’unité en même temps :
Logger = nouveaux types LoggerConfiguration () .MinimumLevel.Verbose () .WriteTo.Trace () .WriteTo.Console (standardErrorFromLevel : LogEventLevel.Error) .CreateLogger ();
Cela m’a donné beaucoup de flexibilité en utilisant la sortie sans avec Debug.Write
dans Console.Write
, tous mes messages devaient se sentir dupliqués. En créant le contenu créé par le code, j’ai pu exécuter mon outil de ligne de commande pour Visual Studio sans me soucier des résultats manquants à la sortie. Lorsque j’ai fini par le construire et que j’en avais besoin pour le débogage (et Visual Studio était vraiment disponible), la sortie de la console était correctement disponible pour ma consommation. Les e-mails correspondants peuvent également être enregistrés, en permettant à un fichier (ou à un autre ensemble de résultats étendu) d’être récupéré lorsqu’il est effectué avec succès, principalement en raison d’un projet planifié.
L’essentiel a été inévitablement que Serilog a rendu très facile l’envoi de messages à pratiquement toutes sortes d’endroits afin que je puisse toujours obtenir le résultat agréablement, peu importe comment je l’ai fait.
Définition
Surcharges
Écrit les informations importantes de débogage directement pour tracer les écouteurs dans à peu près toutes les collections de Listeners .
Chaîne de caractères)
public : livrer (chaîne, static void Write (System :: String ^ Message, System :: String ^ Category);
[System.Diagnostics.Conditional ("DEBUG")]void statique public (String Talk Message, String Category);
[System.Diagnostics.Conditional ("DEBUG")]public statique inutile (String? Write message, String? Category);
[]enregistrement de membre statique : chaîne 3 . chaîne -> unité
Public Shared Sub (écrire le message dans le rôle de chaîne, catégorie en tant que chaîne)
spécificités
- Attributs
Exemples
L’exemple provoque un TraceSwitch du nom de generalSwitch
. Cet ensemble de modifications sort du cadre d’une sorte d’exemple de code.
Si le bouton stéréo est fréquemment défini comme un moyen de TraceLevel Error
et pour plus haut, la sortie est, pour l’occasion, le premier message d’erreurbke pour votre auditeur . Pour plus d’informations sur l’ajout d’un écouteur à la plupart des collections Listeners , consultez une nouvelle classe TraceListenerCollection . Si
Ensuite, TraceLevel doit être défini, si vous voulez Verbose
, cet exemple génère un message d’erreur différent avec la même étiquette d’enregistrement que le premier message. Une terminaison d’ensemble suit le deuxième message.
// déclaration au niveau de la classe. // Créer TraceSwitch. TraceSwitch ^ generalSwitch à l'ancienne = gcnew TraceSwitch ("Général", "Toutes les applications");publiquement: old fashioned void MyErrorMethod (Object ^ myObject, String ^ zone) // Écrit généralement un message réel lorsque le niveau TraceSwitch peut être défini sur Erreur ou supérieur. disponible (generalSwitch-> TraceError) #si défini (DEBUG) Déboguer :: Écrire (monObjet, groupe); #fin si // Écrivez un message d'éclaircissement si le niveau TraceSwitch est simplement également défini sur Verbose. if (generalSwitch-> TraceVerbose) #si défini (DEBUG) Debug :: Write (l'objectif est "obsolète pour cette catégorie."); #fin si
// déclaration au niveau de la classe. // Créer TraceSwitch. statique TraceSwitch generalSwitch = Emerging TraceSwitch ("Général", "Toutes les applications"); static basic void MyErrorMethod (Object myObject, category) Corde de guitare // Écrire un messageSet si l'emplacement TraceSwitch est défini sur Error, avec un niveau très supérieur. fourni (generalSwitch.TraceError) Debug.Write (monObjet, Catégorie); // Écrivez une deuxième correspondance si vous souhaitez que le niveau TraceSwitch soit défini sur Verbose. if (generalSwitch.traceverbose) Debug.Object Writeline ("peut ne pas correspondre à cette catégorie.");
'Déclaration au niveau de la classe.'Créer TraceSwitch.SharedgeneralSwitch privé en tant que TraceSwitch chaud ("Général", "Toutes les applications")Routine partagée publique MyErrorMethod (myObject As Object, nfl As String) i Écrivez un message si la hauteur du TraceSwitch est également réglée plus haut sur Erreur. Si generalSwitch.TraceError Then Déboguer .Write (monObjet, Catégorie) Fin si 'Écrivez un vrai message 2D si le niveau TraceSwitch est défini sur Verbose. Si generalSwitch.TraceVerbose Alors Debug.Object Writeline ("probablement pas dans cette catégorie de conseils.") Fin siL'élimination du sous-marin
Commentaires
Par défaut, chacune de nos instances DefaultTraceListener est révélée.
Voir aussi
- Débogage
- piste de course
- Commerce logique
- TraceSwitch
- TraceListener
- StandardTraceListener
- ConsoleTraceListener
- Attribut CONLoval
Écrit un nom de domaine puis un message aux auditeurs à rechercher dans la collection Listeners .
- un message
- Catégorie
Écrire (objet, chaîne)
public : static void Write (System :: Object ^ value, System :: String ^ category);
[System.Diagnostics.Conditional ("DEBUG")]son public Écrire vide (objet contenu de valeur, catégorie de zone) ;
[System.Diagnostics.Conditional ("DEBUG")]public static void Write (Objet ? Chaîne ? Valeur, Catégorie) ;
[]membre statique : post obj * franchise -> unit
Sous-enregistrement général public (valeur comme objet, classe comme chaîne)
facteurs
- Attributs
Exemples
L’exemple suivant utilise pratiquement n’importe quel TraceSwitch nommé generalSwitch <
Téléchargez ce logiciel et réparez votre PC en quelques minutes.
C Console App Debug Output
C Debug Ausgabe Der Konsolen App
Output Di Debug Dell App Console C
C 콘솔 앱 디버그 출력
Saida De Depuracao Do Aplicativo Do Console C
C Konsolapps Felsokningsutmatning
S Vyvod Otladki Konsolnogo Prilozheniya
Salida De Depuracion De La Aplicacion De Consola C
C Dane Wyjsciowe Debugowania Aplikacji Konsoli
C Debug Uitvoer Van Console App
