Crear vistas personalizadas de objetos .NET (C#, Visual Basic, F#, C++/CLI)
Se puede personalizar la manera en que Visual Studio muestra los tipos de datos en las ventanas de variables del depurador.
Atributos
En C#, Visual Basic, F# y C++ (solo código de C++/CLI), se pueden agregar expansiones para los datos personalizados mediante DebuggerDisplayAttribute, DebuggerTypeProxyAttribute y DebuggerBrowsableAttribute.
En código de .NET Framework 2.0, Visual Basic no admite el atributo DebuggerBrowsable. Esta limitación se ha quitado en las últimas versiones de .NET.
Visualizadores
Hay dos opciones para crear un visualizador para un tipo de .NET:
- Con el SDK de VisualStudio.Extensibility: a partir de la versión 17.9 de Visual Studio 2022, Visual Studio incluye una nueva manera de crear visualizadores personalizados que ofrecen, entre otras cosas, la instalación de extensiones sencillas y la capacidad de dirigirse a versiones más recientes de .NET. Esta opción es la API recomendada, excepto en los casos en los que el visualizador y el tipo visualizado deban enviarse juntos, o en los casos en los que sea necesario admitir una versión anterior de Visual Studio. Para obtener más información, consulte Creación de visualizadores del depurador de Visual Studio.
- Utilización de Microsoft.VisualStudio.DebuggerVisualizers.DialogDebuggerVisualizer: para obtener más información sobre este enfoque, consulte Visualizadores personalizados.
Nota:
Para crear un visualizador para objetos de C/C++, consulte el elemento UIVisualizer en la documentación de Natvis. Consulte también el ejemplo del visualizador personalizado de C/C++ o el ejemplo del visualizador de depurador nativo de SQLite.