IAsyncVisualizerObjectProvider Rozhraní
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Poskytuje asynchronní implementaci pro metody definované v IVisualizerObjectProvider2 , které poskytují funkce pro předávání dat z ladicího objektu vizualizéru a naopak.
public interface IAsyncVisualizerObjectProvider : Microsoft.VisualStudio.DebuggerVisualizers.IVisualizerObjectProvider2
type IAsyncVisualizerObjectProvider = interface
interface IVisualizerObjectProvider2
interface IVisualizerObjectProvider
Public Interface IAsyncVisualizerObjectProvider
Implements IVisualizerObjectProvider2
- Implementuje
Poznámky
Objekt IVisualizerObjectProvider předaný metodě DialogDebuggerVisualizerShow(IDialogVisualizerService, IVisualizerObjectProvider) pro VS 17.2 a vyšší je tohoto typu, takže byste ho měli přetypovat, aby používal tuto novou funkci.
Vlastnosti
IsBinaryFormatterSupported |
Určuje, jestli ladicí proces podporuje BinaryFormatter, protože byl v .NET 5 zastaralý. Pokud ne, zprostředkovatel ke komunikaci s vizualizérem nejčastěji používá JSON. (Zděděno od IVisualizerObjectProvider) |
IsObjectReplaceable |
Určuje, zda lze vytvořit náhradní objekt. To znamená, že určuje, zda je vizualizovaný datový objekt nahraditelný (čtení/zápis) nebo nenahraditelný (jen pro čtení). (Zděděno od IVisualizerObjectProvider) |
Metody
Deserialize(Stream) |
Zastaralé.
Starší pomocné metody používané starými vizualizéry, které usnadňují psaní kódu deserializace. Používá výchozí binární serializaci ke čtení daného objektu z datového proudu. Kvůli chybám zabezpečení v důsledku jejího použití by se už ale neměl používat a vyvolá se u novějších verzí rozhraní .NET, jako je ASP.NET Core 5.0. Pokud je volána cílová aplikace, která podporuje binární serializaci, po dokončení metody se datový proud načte a vrátíme podkladový objekt. (Zděděno od IVisualizerObjectProvider2) |
GetData() |
Získá počáteční objekt blob dat o objektu, který se ladí. Data se zapíšou do zadaného MemoryStreamu. (Zděděno od IVisualizerObjectProvider) |
GetDeserializableObject() |
Získá data pomocí GetData a poté vrátí IDeserializableObject tak, že volající může deserializovat s JSON, pokud výchozí serializace není podporována. (Zděděno od IVisualizerObjectProvider2) |
GetDeserializableObjectAsync(CancellationToken) |
Získá data pomocí asynchronní verze GetData a poté vrátí IDeserializableObject tak, že volající lze deserializovat s JSON pokud výchozí seriallizace není podporována. |
GetDeserializableObjectFrom(Stream) |
Pomocná metoda, která se dá použít k získání deserializovatelného objektu v případech, kdy cílová aplikace nemusí podporovat binární serializaci. V těchto případech by měl být podkladový formát serializován pomocí JSON, aby volající mohli dotazovat jednotlivé vlastnosti a určit typ objektu, který chtějí deserializovat. (Zděděno od IVisualizerObjectProvider2) |
GetObject() |
Zastaralé.
Získá data pomocí GetData a poté deserializuje za předpokladu, že výchozí serializace byla provedena. (Zděděno od IVisualizerObjectProvider) |
ReplaceData(Stream) |
Vytvoří náhradní kopii objektu na základě serializovaných dat zadaných. (Zděděno od IVisualizerObjectProvider) |
ReplaceDataAsync(Stream, CancellationToken) |
Vytvoří náhradní kopii objektu na základě serializovaných dat zadaných asynchronně. |
ReplaceObject(Object) |
Serializuje objekt pomocí výchozí serializace a pak nastaví data pomocí ReplaceData (Zděděno od IVisualizerObjectProvider) |
Serialize(Object, Stream) |
Pomocná metoda, která usnadňuje psaní serializačního kódu. Pokud cílová aplikace podporuje binární serializaci serializuje objekt do datového proudu pomocí Třídy BinaryFormatter. Pokud to není podporováno, což je případ v novějších verzích .NET, ve výchozím nastavení se objekt serializuje ve formátu JSON. (Zděděno od IVisualizerObjectProvider2) |
TransferData(Stream) |
Přenese data obousměrně do metody TransferData na VizualizéruObjectSource. (Zděděno od IVisualizerObjectProvider) |
TransferDeserializableObject(Object) |
Serializuje odchozí objekt pomocí jako IDeserializableObject a pak volá TransferData. Při vrácení deserializes příchozí data a vrátí objekt zabalený v IDeserializableObject. (Zděděno od IVisualizerObjectProvider2) |
TransferDeserializableObjectAsync(Object, CancellationToken) |
Serializuje odchozí objekt pomocí jako IDeserializableObject a poté zavolá asynchronní verzi TransferData. Při vrácení deserializes příchozí data a vrátí objekt zabalený v IDeserializableObject. |
TransferObject(Object) |
Zastaralé.
Serializuje odchozí objekt pomocí výchozí serializace a pak volá TransferData. Při návratu deserializuje příchozí data a vrátí deserializovaný objekt. (Zděděno od IVisualizerObjectProvider) |