Udostępnij za pośrednictwem


IVisualizerObjectProvider2 Interfejs

Definicja

Udostępnia dodatkowe funkcje przekazywania danych z debuggee do wizualizatora.

public interface class IVisualizerObjectProvider2 : Microsoft::VisualStudio::DebuggerVisualizers::IVisualizerObjectProvider
public interface IVisualizerObjectProvider2 : Microsoft.VisualStudio.DebuggerVisualizers.IVisualizerObjectProvider
type IVisualizerObjectProvider2 = interface
    interface IVisualizerObjectProvider
Public Interface IVisualizerObjectProvider2
Implements IVisualizerObjectProvider
Pochodne
Implementuje

Uwagi

Obiekt IVisualizerObjectProvider przekazany do DialogDebuggerVisualizermetody programu Show(IDialogVisualizerService, IVisualizerObjectProvider) VS 16.10 jest tego typu, więc należy rzutować go w celu użycia tej nowej funkcji.

Właściwości

IsBinaryFormatterSupported

Określa, czy debuggee obsługuje binaryFormatter, ponieważ był przestarzały na platformie .NET 5. Jeśli tak nie jest, dostawca najczęściej używa formatu JSON do komunikowania się z wizualizatorem.

(Odziedziczone po IVisualizerObjectProvider)
IsObjectReplaceable

Określa, czy można utworzyć obiekt zastępczy. Oznacza to, że określa, czy wizualizowany obiekt danych jest zastępowalny (odczyt/zapis) lub niezastąpiony (tylko do odczytu).

(Odziedziczone po IVisualizerObjectProvider)

Metody

Deserialize(Stream)
Przestarzałe.

Starsza metoda pomocnika używana przez stare wizualizatory, która ułatwia pisanie kodu deserializacji. Używa domyślnej serializacji binarnej do odczytywania danego obiektu ze strumienia. Jednak ze względu na luki w zabezpieczeniach z użyciem nie powinny być już używane i będą zgłaszane do nowszych wersji platformy .NET, takich jak ASP.NET Core 5.0.

Jeśli zostanie wywołana w aplikacji docelowej, która obsługuje serializację binarną, po zakończeniu działania strumienia zostanie odczytany i zwrócimy obiekt źródłowy.

GetData()

Pobiera początkowy obiekt blob danych dotyczących debugowanego obiektu. Dane są zapisywane w udostępnionym strumieniu pamięci.

(Odziedziczone po IVisualizerObjectProvider)
GetDeserializableObject()

Pobiera dane przy użyciu metody GetData, a następnie zwraca obiekt IDeserializableObject, aby obiekt wywołujący mógł wykonać deserializacji przy użyciu formatu JSON, jeśli domyślna serializacja nie jest obsługiwana.

GetDeserializableObjectFrom(Stream)

Metoda pomocnika, która może służyć do uzyskania obiektu deserializowalnego w przypadkach, w których aplikacja docelowa może nie obsługiwać serializacji binarnej. W takich przypadkach format źródłowy powinien być serializowany przy użyciu formatu JSON, więc wywołujący mogą wykonywać zapytania o poszczególne właściwości, aby określić typ obiektu, który chce deserializować.

GetObject()
Przestarzałe.

Pobiera dane przy użyciu metody GetData, a następnie deserializuje przy założeniu, że domyślna serializacja została wykonana

(Odziedziczone po IVisualizerObjectProvider)
ReplaceData(Stream)

Tworzy kopię zastępczą obiektu na podstawie danych serializowanych.

(Odziedziczone po IVisualizerObjectProvider)
ReplaceObject(Object)

Serializuje obiekt przy użyciu domyślnej serializacji, a następnie ustawia dane przy użyciu replaceData

(Odziedziczone po IVisualizerObjectProvider)
Serialize(Object, Stream)

Metoda pomocnika, która ułatwia pisanie kodu serializacji.

Jeśli aplikacja docelowa obsługuje serializację binarną, serializuje obiekt do strumienia za pomocą klasy BinaryFormatter. Jeśli to nie jest obsługiwane, co jest możliwe w nowszych wersjach platformy .NET, domyślnie serializuje obiekt w formacie JSON.

TransferData(Stream)

Transferuje dane dwukierunkowo do metody TransferData w obiekcie VisualizerObjectSource

(Odziedziczone po IVisualizerObjectProvider)
TransferDeserializableObject(Object)

Serializuje obiekt wychodzący przy użyciu metody IDeserializableObject, a następnie wywołuje metodę TransferData. Po powrocie deserializuje dane przychodzące i zwraca obiekt opakowany w obiekt IDeserializableObject.

TransferObject(Object)
Przestarzałe.

Serializuje obiekt wychodzący przy użyciu domyślnej serializacji, a następnie wywołuje metodę TransferData. Po powrocie deserializuje dane przychodzące i zwraca obiekt deserializowany

(Odziedziczone po IVisualizerObjectProvider)

Dotyczy