Share via


IVisualizerObjectProvider Interfaccia

Definizione

Fornisce i dati dell'oggetto dal debug al visualizzatore.

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

Esempio

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

Commenti

Un visualizzatore è un piccolo programma usato dal debugger di Visual Studio per visualizzare (visualizzare) un oggetto di un tipo di dati specifico in modo significativo. Per visualizzare un oggetto, un visualizzatore usa il codice eseguito nel processo del debugger (lato debugger) e il codice nel processo in fase di debug (lato debug).

Il lato debugger e il lato debug comunicano tra loro usando VisualizerObjectSource e IVisualizerObjectProvider.

Il lato debug usa VisualizerObjectSource per specificare un VisualizerObjectSource oggetto per il lato debugger. Il debugger richiede e riceve queste informazioni chiamando i metodi nell'interfaccia IVisualizerObjectProvider .

Un visualizzatore può modificare, nonché visualizzare i dati. Se il visualizzatore supporta la modifica dei dati, è necessario sostituire completamente i dati chiamando ReplaceData(Stream) o ReplaceObject(Object) trasferiscendo i dati al debug usando TransferData(Stream) o TransferObject(Object). Se si desidera salvare nuovamente i dati, è anche necessario creare un'origine oggetto personalizzata.

Proprietà

IsBinaryFormatterSupported

Specifica se il debug supporta BinaryFormatter poiché è stato deprecato in .NET 5. In caso contrario, il provider usa più JSON per comunicare con il visualizzatore.

IsObjectReplaceable

Specifica se è possibile creare un oggetto sostitutivo. In questo caso, determina se l'oggetto dati visualizzato è sostituibile (lettura/scrittura) onono (sola lettura).

Metodi

GetData()

Ottiene un BLOB iniziale di dati sull'oggetto sottoposto a debug. I dati vengono scritti nell'oggetto MemoryStream fornito.

GetObject()
Obsoleti.

Ottiene i dati usando GetData e quindi deserializza presupponendo che la serializzazione predefinita sia stata eseguita

ReplaceData(Stream)

Crea una copia sostitutiva dell'oggetto in base ai dati serializzati specificati.

ReplaceObject(Object)

Serializza l'oggetto usando la serializzazione predefinita e quindi imposta i dati usando ReplaceData

TransferData(Stream)

Trasferisce i dati bidirezionalmente al metodo TransferData nel visualizzatoreObjectSource

TransferObject(Object)
Obsoleti.

Serializza l'oggetto in uscita usando la serializzazione predefinita e quindi chiama TransferData. Quando restituisce deserializza i dati in ingresso e restituisce l'oggetto deserializzato

Si applica a