Compartir a través de


IVisualizerObjectProvider Interfaz

Definición

Proporciona datos de objeto del depurador al visualizador.

public interface class IVisualizerObjectProvider
public interface class IVisualizerObjectProvider
__interface IVisualizerObjectProvider
public interface IVisualizerObjectProvider
type IVisualizerObjectProvider = interface
Public Interface IVisualizerObjectProvider
Derivado

Ejemplos

public class DebuggerSide : DialogDebuggerVisualizer  
{  
    override protected void Show(IDialogVisualizerService windowService, IVisualizerObjectProvider objectProvider)
    {
         MessageBox.Show(objectProvider.GetObject<object>().ToString());
    }
    // . . . Other methods omitted for clarity.  
}

Comentarios

Un visualizador es un pequeño programa que el depurador de Visual Studio usa para mostrar (visualizar) un objeto de un tipo de datos específico de manera significativa. Para visualizar un objeto, un visualizador usa código que se ejecuta en el proceso del depurador (el lado del depurador) y el código del proceso que se está depurando (el lado depurado).

El lado depurador y el lado depurado se comunican entre sí mediante VisualizerObjectSource y IVisualizerObjectProvider.

El lado depurado usa VisualizerObjectSource para especificar un VisualizerObjectSource objeto para el lado del depurador. El lado depurador solicita y recibe esta información llamando a métodos en la IVisualizerObjectProvider interfaz .

Un visualizador puede editar, así como mostrar, datos. Si el visualizador admite la edición de datos, debe reemplazar los datos por completo mediante una llamada o ReplaceData(Stream)ReplaceObject(Object) transferencia de datos al depurado mediante TransferData(Stream) o TransferObject(Object). Si desea volver a guardar los datos, también debe crear su propio origen de objeto.

Propiedades

IsBinaryFormatterSupported

Especifica si el depurado admite BinaryFormatter, ya que está en desuso en .NET 5. Si no es así, el proveedor que más usa JSON para comunicarse con el visualizador.

IsObjectReplaceable

Especifica si se puede crear un objeto de reemplazo. Es decir, determina si el objeto de datos que se va a visualizar es reemplazable (lectura y escritura) o no reemplazable (solo lectura).

Métodos

GetData()

Obtiene un blob inicial de datos sobre el objeto que se está depurando. Los datos se escriben en memoryStream proporcionado.

GetObject()
Obsoletos.

Obtiene los datos mediante GetData y, a continuación, deserializa suponiendo que se ha realizado la serialización predeterminada.

ReplaceData(Stream)

Crea una copia de reemplazo del objeto basándose en los datos serializados especificados.

ReplaceObject(Object)

Serializa el objeto mediante la serialización predeterminada y, a continuación, establece los datos mediante ReplaceData.

TransferData(Stream)

Transfiere los datos de forma bidireccional al método TransferData en visualizerObjectSource.

TransferObject(Object)
Obsoletos.

Serializa el objeto saliente mediante la serialización predeterminada y, a continuación, llama a TransferData. Tras la devolución, deserializa los datos entrantes y devuelve el objeto deserializado.

Se aplica a