visual tutorial trucos studio multi extensions español code atajos visual-studio visual-studio-2010 debugging

tutorial - Copie valores de objetos en el modo de depuración de Visual Studio



visual studio code shortcuts windows (6)

Al usar atributos para decorar sus clases y métodos , puede tener un valor específico de la visualización de su objeto durante la depuración con el atributo DebuggerDisplay, por ejemplo

[DebuggerDisplay("Person - {Name} is {Age} years old")] public class Person { public string Name { get; set; } public int Age { get; set; } }

En el modo de depuración de Visual Studio, es posible desplazarse sobre las variables para mostrar su valor y luego hacer clic derecho en "Copiar", "Copiar expresión" o "Copiar valor".

En caso de que la variable sea un objeto y no solo un tipo básico, hay un signo + para expandir y explorar el objeto. ¿Hay alguna forma de copiar todo eso en el portapapeles?


En la ventana inmediata, escriba

? name_of_variable

Esto imprimirá todo , y puede copiarlo en cualquier lugar que desee, o usar las características de registro de la ventana inmediata para escribirlo automáticamente en un archivo.

ACTUALIZACIÓN : supongo que estaba preguntando cómo copiar / pegar la estructura anidada de los valores para que pueda buscarla textualmente, o para que pueda guardarla en el lateral y luego comparar el estado del objeto con ella. Si estoy en lo cierto, es posible que desee verificar la extensión comercial de Visual Studio que creé, llamada OzCode , que le permite hacer esto mucho más fácilmente a través de las funciones "Buscar" y "Comparar".

ACTUALIZACIÓN 2 Para responder a la pregunta de @pbumkin, o el nuevo EAP tiene una nueva función de exportación, permite a los usuarios exportar los valores de las variables a código Json, XML, Excel o C #.

Descripción completa: soy el cocreador de la herramienta que describí aquí.



Google me llevó a esta pregunta de hace 8 años y terminé usando ObjectDumper para lograr algo muy similar a copiar y pegar datos del depurador. Fue una brisa.

Sé que la pregunta se hizo específicamente sobre la información del depurador , pero ObjectDumper proporciona información que es básicamente la misma. Supongo que aquellos que buscan en Google esta pregunta son como yo y solo necesitan los datos para depuración y no les importa si provienen técnicamente del depurador o no.


No es exactamente lo que está pidiendo, pero puede agregar un reloj para ese objeto, y en la ventana del reloj, expanda y seleccione todo lo que desea copiar y luego cópielo.


Puede ejecutar el código siguiente en la ventana inmediata y exportará a un archivo xml la representación XML serializada de un objeto:

(new System.Xml.Serialization.XmlSerializer(obj.GetType())).Serialize(new System.IO.StreamWriter(@"c:/temp/text.xml"), obj)

Fuente: Visual Studio cómo serializar el objeto del depurador