Share via


Implementación de visualizadores de tipos y visores personalizados

Importante

En Visual Studio 2015, esta forma de implementar evaluadores de expresiones está en desuso. Para obtener información sobre cómo implementar evaluadores de expresiones CLR, vea Evaluadores de expresiones CLR y Ejemplo de evaluador de expresiones administradas.

Los visualizadores de tipos y los visores personalizados permiten a un usuario ver los datos de un tipo determinado de una manera más significativa que un simple volcado hexadecimal de números. Un evaluador de expresiones (EE) puede asociar visores personalizados con tipos específicos de datos o variables. Estos visores personalizados se implementan mediante ee. La EE también puede admitir visualizadores de tipos externos, que podrían provenir de otro proveedor de terceros o incluso del usuario final.

Debate

Visualizadores de tipos

Visual Studio solicita una lista de visualizadores de tipo y visores personalizados para cada objeto que se va a mostrar en una ventana de inspección. Un evaluador de expresiones (EE) proporciona una lista de este tipo para cada tipo para el que quiere admitir visualizadores de tipos y visores personalizados. Las llamadas a GetCustomViewerCount y GetCustomViewerList inician todo el proceso de acceso a visualizadores de tipos y visores personalizados (consulte Visualización y visualización de datos para obtener más información sobre la secuencia de llamadas).

Visores personalizados

Los visores personalizados se implementan en EE para un tipo de datos específico y se representan mediante la interfaz IDebugCustomViewer . Un visor personalizado no es tan flexible como un visualizador de tipos, ya que solo está disponible cuando el EE que implementa ese visor personalizado concreto se está ejecutando. Implementar un visor personalizado es más sencillo que implementar la compatibilidad con los visualizadores de tipos. Sin embargo, admitir visualizadores de tipos proporciona máxima flexibilidad al usuario final para visualizar sus datos. El resto de esta discusión solo se refiere a los visualizadores de tipos.

Interfaces

Ee implementa las siguientes interfaces para admitir visualizadores de tipos, que Visual Studio usará: