Articles of débogage

ssortingng.GetHashCode () renvoie différentes valeurs dans debug vs release, comment puis-je éviter cela?

A ma grande surprise, la méthode suivante produit un résultat différent dans debug vs release: int result = “test”.GetHashCode(); y-a-t-il un moyen d’éviter ça? J’ai besoin d’un moyen fiable pour hacher une chaîne et la valeur doit être cohérente en mode débogage et libération. Je voudrais éviter d’écrire ma propre fonction de hachage si possible. […]

Comment empêcher le compilateur / CLR C # d’optimiser les variables inutilisées dans les versions DEBUG?

Pendant le débogage, j’ai essayé de sauvegarder les résultats intermédiaires d’un calcul dans une variable afin de pouvoir vérifier cette valeur lorsqu’une condition de point d’arrêt est remplie. Cependant, le compilateur C # (ou CLR) a optimisé cette variable comme étant inutilisée. J’ai résolu le problème en faisant de la variable un champ public de […]

Debug.Writeline n’imprime rien

VS 2010 Pro, C #, WinForms: au tout début de ma méthode, je dis Debug.Writeline (“entry method blah”); puis quelque part dans cette méthode je mets quelques points d’arrêt et exécute le programme. donc je vois que l’exécution est arrêtée à ces points de rupture, donc c’est ici! mais si je recherche dans le mode […]

Comportement étrange du débogueur dans la méthode async

Lorsque j’ai dépassé les points d’arrêt de mon code, j’ai rencontré un comportement étrange du débogueur: public async Task DoSomeWork() { await Task.Run(() => { Thread.Sleep(1000); }); var test = false; if (test) { throw new Exception(“Im in IF body!”); } } Le débogueur va dans if corps. Il est remarquable que l’exception ne soit […]

Debug.WriteLine ne montre rien

Lors de l’utilisation using System.Diagnostics; et Debug.WriteLine(“Test”); Après avoir exécuté l’application, aucun “Test” ne peut être vu en sortie. Mais si j’utilise plutôt la fonction msgbox, la msgbox apparaîtra, de sorte que la ligne est atteinte. Est-ce que je regarde dans la mauvaise fenêtre ou que dois-je changer? J’utilise VC # Express.

Point d’arrêt qui se brise lorsque les données changent dans une langue gérée

J’ai une classe avec une propriété list qui semble perdre un élément dans certaines circonstances. Je ne peux pas savoir quand cela se produit. Par conséquent, ce que j’aimerais faire est de configurer un point d’arrêt Visual Studio qui mettra le programme en pause dès que cette valeur changera. Un point d’arrêt conditionnel ne fonctionnerait […]

rechercher une valeur dans un object au moment de l’exécution

Parfois, je perds mon temps à rechercher une valeur dans un object au moment de l’exécution. Vous connaissez certainement tous cette tâche -> ouvrez la vue QuickWatch et parcourez les propriétés jusqu’à ce que vous trouviez ce que vous recherchez. Je cherche un outil / complément / extension où il est possible de rechercher une […]

Utilisation de serveurs de pépites et de symboles

Je dois le faire mal. J’utilise VS2012, c #. J’utilise nuget pour gérer mes paquets. Auparavant, j’avais toujours créé un répertoire “Références externes” et géré des packages. J’ai décidé de suivre maintenant la nouvelle méthode de gestion des paquets. Quoi qu’il en soit, Nuget travaille un régal. Je l’ai configuré pour que les packages ne […]

Comment puis-je autoriser l’interruption sur ‘System.NullReferenceException’ dans VS2010?

J’ai un projet VS 2010 C # .NET 4. Le problème est que le programme ne rompt pas avec les erreurs ‘NullReferenceException’ lors du débogage. La fenêtre de sortie affichera ce qui suit: A first chance exception of type ‘System.NullReferenceException’ occurred in myProgram.exe … mais le débogueur va simplement quitter la fonction et continuer à […]

Point d’arrêt C # conditionnel?

Je débogue une boucle foreach qui itérera bien plus de 1 000 fois – je souhaite donc qu’un point d’arrêt au sein de la boucle casse pour un élément particulier. Alors… foreach(Employee employee in employees) { //DO SOMETHING //BREAK HERE WHEN employee.Id == ‘2342’ //DO SOMETHING ELSE } Dois-je écrire une instruction If et un […]