IAsyncVisualizerObjectProvider Interfejs
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Zapewnia asynchronizowanie implementacji metod zdefiniowanych w IVisualizerObjectProvider2 programie, które zapewniają funkcjonalność przekazywania danych z debugera do wizualizatora i odwrotnie.
public interface IAsyncVisualizerObjectProvider : Microsoft.VisualStudio.DebuggerVisualizers.IVisualizerObjectProvider2
type IAsyncVisualizerObjectProvider = interface
interface IVisualizerObjectProvider2
interface IVisualizerObjectProvider
Public Interface IAsyncVisualizerObjectProvider
Implements IVisualizerObjectProvider2
- Implementuje
Uwagi
Obiekt IVisualizerObjectProvider przekazany do DialogDebuggerVisualizermetody programu Show(IDialogVisualizerService, IVisualizerObjectProvider) VS 17.2 jest tego typu, więc należy go rzutować, aby używać 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. (Odziedziczone po IVisualizerObjectProvider2) |
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. (Odziedziczone po IVisualizerObjectProvider2) |
GetDeserializableObjectAsync(CancellationToken) |
Pobiera dane przy użyciu asynchronizowanej wersji getData, a następnie zwraca obiekt IDeserializableObject, aby obiekt wywołujący mógł deserializować 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ć. (Odziedziczone po IVisualizerObjectProvider2) |
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) |
ReplaceDataAsync(Stream, CancellationToken) |
Tworzy kopię zastępczą obiektu na podstawie serializowanych danych podanych asynchronicznie. |
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. (Odziedziczone po IVisualizerObjectProvider2) |
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. (Odziedziczone po IVisualizerObjectProvider2) |
TransferDeserializableObjectAsync(Object, CancellationToken) |
Serializuje obiekt wychodzący przy użyciu funkcji IDeserializableObject, a następnie wywołuje asynchroniową wersję 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) |