IVisualizerObjectProvider Interfaccia
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
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 |