Dans la fenêtre immédiate, tapez
?name_of_variable
Cela imprimera tout et vous pourrez le copier manuellement où vous le souhaitez, ou utiliser les fonctionnalités de journalisation de la fenêtre immédiate pour l'écrire automatiquement dans un fichier.
MISE À JOUR : Je suppose que vous demandiez comment copier / coller la structure imbriquée des valeurs afin que vous puissiez soit la rechercher textuellement, soit l'enregistrer sur le côté, puis comparer l'état de l'objet à celui-ci. Si j'ai raison, vous voudrez peut-être consulter l'extension commerciale de Visual Studio que j'ai créée, appelée OzCode , qui vous permet de faire ces choses beaucoup plus facilement grâce aux fonctionnalités «Rechercher» et «Comparer».
MISE À JOUR 2 Pour répondre à la question de @ ppumkin, ou le nouvel EAP a une nouvelle fonction d'exportation qui permet aux utilisateurs d'exporter les valeurs des variables vers du code Json, XML, Excel ou C #.
Divulgation complète: je suis le co-créateur de l'outil que j'ai décrit ici.
Vous pouvez exécuter le code ci-dessous dans la fenêtre immédiate et il exportera vers un fichier xml la représentation XML sérialisée d'un objet:
Source: Visual Studio comment sérialiser un objet à partir du débogueur
la source
Cannot evaluate expression because the code of the current method is optimized.
???File.WriteAllText(@"c:\movie.json", JsonConvert.SerializeObject(movie));
The debugger is unable to evaluate this expression
. J'utilise Visual Studio 2019; J'ai remplacéobj
par le nom de la variable qui est typeSystem.Collections.Generic.List 1[[System.ValueTuple 3[[System.String, System.Private.CoreLib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.String, System.Private.CoreLib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.String, System.Private.CoreLib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]], System.Private.CoreLib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=7]]
Il existe une extension récente d'Object Exporter qui fait cela de manière pratique.
http://www.omarelabd.net/exporting-objects-from-the-visual-studio-debugger/
Extension: https://visualstudiogallery.msdn.microsoft.com/c6a21c68-f815-4895-999f-cd0885d8774f
la source
Vous pouvez ajouter une montre pour cet objet, et dans la fenêtre de surveillance, développer et sélectionner tout ce que vous voulez copier, puis le copier.
la source
Réponse la plus populaire de https://stackoverflow.com/a/23362097/2680660 :
la source
En utilisant des attributs pour décorer vos classes et méthodes, vous pouvez avoir une valeur spécifique de l'affichage de votre objet pendant le débogage avec l' attribut DebuggerDisplay, par exemple
la source
Google m'a conduit à cette question vieille de 8 ans et j'ai fini par utiliser ObjectDumper pour réaliser quelque chose de très similaire au copier-coller des données du débogueur. C'était un jeu d'enfant.
Je connais la question posée spécifiquement sur les informations du débogueur , mais ObjectDumper donne des informations qui sont fondamentalement les mêmes. Je suppose que ceux qui recherchent sur Google cette question sont comme moi et ont juste besoin des données à des fins de débogage et ne se soucient pas de savoir si elles proviennent techniquement du débogueur ou non.
la source
J'utilise toujours:
Ensuite, je copie la valeur de la chaîne qui, malheureusement, copie également les barres obliques inverses.
Pour supprimer les backlashes, allez ici: https://www.w3schools.com/jsref/tryit.asp?filename=tryjsref_replace
Ensuite, dans l'
<p id="demo">Visit Microsoft!</p>
élément, remplacez le texte par le texte que vous avez copié. puis remplacez lavar res = str.replace("Microsoft", "W3Schools");
ligne parExécutez ces nouvelles modifications mais n'oubliez pas de cliquer sur le bouton «essayer» à droite.
Vous devriez maintenant avoir tout le texte de l'objet au format json que vous pouvez déposer dans un formateur json comme http://jsonformatter.org ou pour créer un POCO, vous pouvez maintenant utiliser http://json2csharp.com/
la source
Je sais que je suis un peu en retard à la fête, mais j'ai écrit une implémentation JSON pour sérialiser un objet, si vous préférez avoir une sortie JSON. Utilise la référence Newtonsoft.Json.
la source
si vous avez une liste et que vous voulez trouver une variable spécifique: Dans la fenêtre immédiate, tapez
si cela retourne vrai
la source
J'ai juste cliqué avec le bouton droit de la souris sur la variable et sélectionné AddWatch , cela fait apparaître la fenêtre de surveillance qui comprend toutes les valeurs. J'ai tout sélectionné et je l'ai collé dans un texte dans un éditeur de texte, c'est tout.
la source