Создание пользовательских представлений объектов .NET (C#, Visual Basic, F#, C++/CLI)
Можно настроить то, как Visual Studio отображает типы данных в окнах переменных отладчика.
Атрибуты
В C#, Visual Basic, F# и C++ (только код C++/CLI) можно добавлять расширения для пользовательских данных с помощью DebuggerDisplayAttribute, DebuggerTypeProxyAttribute и DebuggerBrowsableAttribute.
В коде платформа .NET Framework 2.0 Visual Basic не поддерживает атрибут DebuggerBrowsable. Это ограничение устранено в более новых версиях .NET.
Визуализаторы
Существует два варианта создания визуализатора для типа .NET:
- Использование пакета SDK для VisualStudio.Extensibility: начиная с Visual Studio 2022 версии 17.9 Visual Studio предоставляет новый способ создания пользовательских визуализаторов, который предлагает, помимо прочего, простую установку расширений и возможность целевых версий .NET. Этот параметр является рекомендуемым API, за исключением случаев, когда визуализатор и визуализированный тип должны отправляться вместе или в случаях, когда требуется поддерживать более раннюю версию Visual Studio. Дополнительные сведения см. в статье "Создание визуализаторов отладчика Visual Studio".
- Использование Microsoft.VisualStudio.DebuggerVisualizers.DialogDebuggerVisualizer. Дополнительные сведения об этом подходе см. в разделе "Пользовательские визуализаторы".
Примечание.
Чтобы создать визуализатор для объектов C/C++, см . элемент UIVisualizer в документации по Natvis . Кроме того, см . пример пользовательского визуализатора C/C++ или образец визуализатора собственного отладчика SQLite.