Especificadores de formato en C# en el depurador de Visual Studio

Puede cambiar el formato en el que se muestra un valor en la ventana Inspección mediante especificadores de formato. También puede usar especificadores de formato en la ventana Inmediato y la ventana Comando, en puntos de seguimiento y en ventanas de código fuente. Si realiza una pausa sobre una expresión de esas ventanas, el resultado aparecerá en una Información sobre datos en el formato de presentación especificado.

Para usar un especificador de formato, escriba la expresión de variable seguida de una coma y el especificador adecuado.

Establecimiento de especificadores de formato

Se usará el siguiente código de ejemplo:

{
    int my_var1 = 0x0065;
    int my_var2 = 0x0066;
    int my_var3 = 0x0067;
}

Agregue la variable my_var1 a la ventana Inspección al depurar, Depurar>Ventanas>Inspección>Inspección 1. Después, haga clic con el botón derecho en la variable y seleccione Presentación hexadecimal. Ahora, en la ventana Inspección se muestra el valor 0x0065. Para ver este valor como un entero decimal en lugar de un entero hexadecimal, agregue el especificador de formato decimal , d en la columna Nombre después del nombre de la variable. En la columna Valor ahora se muestra 101.

Screenshot of the Visual Studio Watch window with one line that shows my_var1, d with a value of 101 and a type of int.

Puede ver una lista de especificadores de formato disponibles y seleccionar de dicha lista anexando una coma (,) al valor de la ventana Inspección.

FormatSpecCSharp

Especificadores de formato

En la tabla siguiente se describen los especificadores de formato de C# para el depurador de Visual Studio.

Especificador Formato Valor de inspección original Muestra
ac Se fuerza la evaluación de una expresión, lo que puede resultar útil si se desactiva la evaluación implícita de propiedades y las llamadas a funciones implícitas. Mensaje “El usuario ha desactivado la evaluación de funciones implícita” <value>
d Entero decimal 0x0065 101
dynamic Muestra el objeto especificado mediante un vista dinámica Muestra todos los miembros del objeto, incluida la vista dinámica Muestra solo la vista dinámica
h Entero hexadecimal 61541 0x0000F065
nq cadena sin comillas "Mi Cadena" Mi Cadena
nse Especifica el comportamiento, no el formato. Evalúa la expresión con "Sin efectos secundarios". Si la expresión no se puede interpretar y solo se puede resolver mediante una evaluación (por ejemplo, una llamada de función), verá un error en su lugar. N/D N/D
hidden Muestra todos los miembros públicos y no públicos Muestra los miembros públicos Muestra todos los miembros
raw Muestra el elemento tal como aparece en el nodo de elemento sin formato. Válido solo en objetos de servidor proxy. Dictionary<T> Vista sin formato de Dictionary<T>
results Se usa con una variable de un tipo que implementa IEnumerable o IEnumerable<T>, que normalmente es el resultado de una expresión de consulta. Solo muestra los miembros que contienen el resultado de la consulta. Muestra todos los miembros Muestra los miembros que cumplan las condiciones de la consulta