Geben Sie im unmittelbaren Fenster ein
?name_of_variable
Dadurch wird alles ausgedruckt , und Sie können es manuell kopieren, wo immer Sie möchten, oder die Protokollierungsfunktionen des unmittelbaren Fensters verwenden, um es automatisch in eine Datei zu schreiben.
UPDATE : Ich nehme an, Sie haben gefragt, wie die verschachtelte Struktur der Werte kopiert / eingefügt werden soll, damit Sie sie entweder textuell durchsuchen oder auf der Seite speichern und später den Status des Objekts damit vergleichen können. Wenn ich recht habe, sollten Sie sich die von mir erstellte kommerzielle Erweiterung von Visual Studio mit dem Namen OzCode ansehen , mit der Sie diese Aufgaben viel einfacher über die Funktionen "Suchen" und "Vergleichen" ausführen können.
UPDATE 2 Um die Frage von @ ppumkin zu beantworten, oder das neue EAP verfügt über eine neue Exportfunktion, mit der Benutzer die Variablenwerte in Json-, XML-, Excel- oder C # -Code exportieren können.
Vollständige Offenlegung: Ich bin Mitentwickler des hier beschriebenen Tools.
Sie können den folgenden Code im unmittelbaren Fenster ausführen und die serialisierte XML-Darstellung eines Objekts in eine XML-Datei exportieren:
Quelle: Visual Studio zum Serialisieren von Objekten aus dem Debugger
quelle
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
. Ich verwende Visual Studio 2019; Ich habeobj
durch den Variablennamen TypSystem.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]]
Es gibt eine aktuelle Erweiterung Object Exporter, die dies bequem erledigt.
http://www.omarelabd.net/exporting-objects-from-the-visual-studio-debugger/
Erweiterung: https://visualstudiogallery.msdn.microsoft.com/c6a21c68-f815-4895-999f-cd0885d8774f
quelle
Sie können eine Überwachung für dieses Objekt hinzufügen und im Überwachungsfenster alles erweitern und auswählen, was Sie kopieren möchten, und es dann kopieren.
quelle
Beliebteste Antwort von https://stackoverflow.com/a/23362097/2680660 :
quelle
Durch die Verwendung von Attributen zum Dekorieren Ihrer Klassen und Methoden können Sie während des Debuggens mit dem DebuggerDisplay-Attribut einen bestimmten Wert aus Ihrer Objektanzeige erhalten , z
quelle
Google hat mich zu dieser 8 Jahre alten Frage geführt und ich habe schließlich ObjectDumper verwendet , um etwas zu erreichen, das dem Einfügen von Debuggerdaten sehr ähnlich ist. Es war ein Kinderspiel.
Ich kenne die Frage, die speziell zu Informationen aus dem Debugger gestellt wurde , aber ObjectDumper liefert Informationen, die im Grunde gleich sind. Ich gehe davon aus, dass diejenigen, die diese Frage googeln, wie ich sind und die Daten nur zum Debuggen benötigen und sich nicht darum kümmern, ob sie technisch vom Debugger stammen oder nicht.
quelle
Ich benutze immer:
Dann kopiere ich den Stringwert, der leider auch die Schrägstriche kopiert.
Um die Spielräume zu entfernen, klicken Sie hier: https://www.w3schools.com/jsref/tryit.asp?filename=tryjsref_replace
<p id="demo">Visit Microsoft!</p>
Ersetzen Sie dann innerhalb des Elements den Text durch den Text, den Sie kopiert haben. Ersetzen Sie dann dievar res = str.replace("Microsoft", "W3Schools");
Leitung durchFühren Sie diese neuen Änderungen aus, aber vergessen Sie nicht, rechts auf die Schaltfläche "Probieren Sie es aus" zu klicken.
Jetzt sollten Sie den gesamten Text des Objekts im JSON-Format haben, den Sie in einem JSON-Formatierer wie http://jsonformatter.org ablegen können. Um einen POCO zu erstellen, können Sie jetzt http://json2csharp.com/ verwenden.
quelle
Ich weiß, dass ich etwas spät zur Party komme, aber ich habe eine JSON-Implementierung zum Serialisieren eines Objekts geschrieben, wenn Sie eine JSON-Ausgabe bevorzugen. Verwendet die Newtonsoft.Json-Referenz.
quelle
Wenn Sie eine Liste haben und eine bestimmte Variable suchen möchten: Geben Sie im unmittelbaren Fenster ein
wenn dies true zurückgibt
quelle
Ich habe gerade mit der rechten Maustaste auf die Variable geklickt und AddWatch ausgewählt. Daraufhin wird das Überwachungsfenster angezeigt , das aus allen Werten besteht. Ich habe alle ausgewählt und in einen Text einen Texteditor eingefügt, das ist alles.
quelle