Sdílet prostřednictvím


IVisualizerObjectProvider Rozhraní

Definice

Poskytuje data objektu z ladicího prostředí do vizualizéru.

public interface class IVisualizerObjectProvider
public interface class IVisualizerObjectProvider
__interface IVisualizerObjectProvider
public interface IVisualizerObjectProvider
type IVisualizerObjectProvider = interface
Public Interface IVisualizerObjectProvider
Odvozené

Příklady

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

Poznámky

Vizualizér je malý program, který ladicí program sady Visual Studio používá k zobrazení (vizualizaci) objektu určitého datového typu smysluplným způsobem. K vizualizaci objektu vizualizér používá kód, který běží v procesu ladicího programu (na straně ladicího programu) a kód v procesu, který se ladí (na straně ladicího programu).

Strana ladicího programu a ladicí strana vzájemně komunikují pomocí VisualizerObjectSource a IVisualizerObjectProvider.

Ladicí strana používá VisualizerObjectSource k určení objektu VisualizerObjectSource na straně ladicího programu. Ladicí program vyžaduje a přijímá tyto informace voláním metod v IVisualizerObjectProvider rozhraní.

Vizualizér může upravovat i zobrazovat data. Pokud vizualizér podporuje úpravy dat, musíte data zcela nahradit voláním ReplaceData(Stream) nebo přenosem dat zpět do ladicího prostředí pomocí nebo TransferData(Stream)TransferObject(Object)ReplaceObject(Object) . Pokud chcete data uložit zpět, musíte také vytvořit vlastní zdroj objektů.

Vlastnosti

IsBinaryFormatterSupported

Určuje, jestli ladicí nástroj podporuje BinaryFormatter, protože byl v .NET 5 zastaralý. Pokud ne, poskytovatel ke komunikaci s vizualizérem nejčastěji používá JSON.

IsObjectReplaceable

Určuje, zda lze vytvořit náhradní objekt. To znamená, že určuje, jestli je vizualizovaný datový objekt nahraditelný (pro čtení/zápis) nebo nenahraditelný (jen pro čtení).

Metody

GetData()

Získá počáteční objekt blob dat o objektu ladění. Data se zapíšou do zadaného MemoryStreamu.

GetObject()
Zastaralé.

Získá data pomocí GetData a poté deserializuje za předpokladu, že byla provedena výchozí serializace.

ReplaceData(Stream)

Vytvoří náhradní kopii objektu na základě zadaných serializovaných dat.

ReplaceObject(Object)

Serializuje objekt pomocí výchozí serializace a pak nastaví data pomocí ReplaceData.

TransferData(Stream)

Přenos dat obousměrně do metody TransferData na VizualizérObjectSource

TransferObject(Object)
Zastaralé.

Serializuje odchozí objekt pomocí výchozí serializace a pak volá TransferData. Při vrácení deserializuje příchozí data a vrátí deserializovaný objekt.

Platí pro