Partager via


IAsyncVisualizerObjectProvider Interface

Définition

Fournit une implémentation asynchrone pour les méthodes définies dans IVisualizerObjectProvider2 qui fournissent des fonctionnalités permettant de transmettre des données du débogage au visualiseur et vice versa.

public interface IAsyncVisualizerObjectProvider : Microsoft.VisualStudio.DebuggerVisualizers.IVisualizerObjectProvider2
type IAsyncVisualizerObjectProvider = interface
    interface IVisualizerObjectProvider2
    interface IVisualizerObjectProvider
Public Interface IAsyncVisualizerObjectProvider
Implements IVisualizerObjectProvider2
Implémente

Remarques

L’objet IVisualizerObjectProvider passé à DialogDebuggerVisualizerla méthode de Show(IDialogVisualizerService, IVisualizerObjectProvider) pour VS 17.2 et versions ultérieures est de ce type. Vous devez donc le caster pour utiliser cette nouvelle fonctionnalité.

Propriétés

IsBinaryFormatterSupported

Spécifie si le débogueur prend en charge BinaryFormatter, car il a été déprécié dans .NET 5. Si ce n’est pas le cas, le fournisseur utilise le plus json pour communiquer avec le visualiseur.

(Hérité de IVisualizerObjectProvider)
IsObjectReplaceable

Spécifie si un objet de remplacement peut être créé. Autrement dit, détermine si l’objet de données visualisable est remplaçable (lecture/écriture) ou non remplaçable (lecture seule).

(Hérité de IVisualizerObjectProvider)

Méthodes

Deserialize(Stream)
Obsolète.

Méthode d’assistance héritée utilisée par les anciens visualiseurs qui facilite l’écriture du code de désérialisation. Il utilise la sérialisation binaire par défaut pour lire l’objet donné à partir du flux. Toutefois, en raison de failles de sécurité liées à son utilisation, il ne doit plus être utilisé et sera utilisé sur les versions plus récentes de .NET, comme ASP.NET Core 5.0.

Si elle est appelée sur une application cible qui prend en charge la sérialisation binaire, une fois la méthode terminée, le flux est lu et nous renvoyons l’objet sous-jacent.

(Hérité de IVisualizerObjectProvider2)
GetData()

Obtient un objet blob initial de données sur l’objet en cours de débogage. Les données sont écrites dans le MemoryStream fourni.

(Hérité de IVisualizerObjectProvider)
GetDeserializableObject()

Obtient les données à l’aide de GetData, puis retourne un IDeserializableObject afin que l’appelant puisse désérialiser avec JSON si la sérialisation par défaut n’est pas prise en charge.

(Hérité de IVisualizerObjectProvider2)
GetDeserializableObjectAsync(CancellationToken)

Obtient les données à l’aide d’une version asynchrone de GetData, puis retourne un objet IDeserializableObject afin que l’appelant puisse désérialiser avec JSON si la sérialisation par défaut n’est pas prise en charge.

GetDeserializableObjectFrom(Stream)

Méthode d’assistance qui peut être utilisée pour obtenir un objet désérialisable dans les cas où l’application cible peut ne pas prendre en charge la sérialisation binaire. Dans ce cas, le format sous-jacent doit être sérialisé à l’aide de JSON, afin que les appelants puissent interroger des propriétés individuelles pour déterminer le type de l’objet qu’ils souhaitent désérialiser.

(Hérité de IVisualizerObjectProvider2)
GetObject()
Obsolète.

Obtient les données à l’aide de GetData, puis désérialise en supposant que la sérialisation par défaut a été effectuée

(Hérité de IVisualizerObjectProvider)
ReplaceData(Stream)

Crée une copie de remplacement de l’objet en fonction des données sérialisées fournies.

(Hérité de IVisualizerObjectProvider)
ReplaceDataAsync(Stream, CancellationToken)

Crée une copie de remplacement de l’objet en fonction des données sérialisées fournies de manière asynchrone.

ReplaceObject(Object)

Sérialise l’objet à l’aide de la sérialisation par défaut, puis définit les données à l’aide de ReplaceData

(Hérité de IVisualizerObjectProvider)
Serialize(Object, Stream)

Méthode d’assistance qui facilite l’écriture du code de sérialisation.

Si l’application cible prend en charge la sérialisation binaire, elle sérialise l’objet dans le flux à l’aide de la classe BinaryFormatter. Si cela n’est pas pris en charge, ce qui est le cas dans les versions plus récentes de .NET, l’objet est sérialisé par défaut au format JSON.

(Hérité de IVisualizerObjectProvider2)
TransferData(Stream)

Transfère les données de manière bidirectionnelle à la méthode TransferData sur le VisualizerObjectSource

(Hérité de IVisualizerObjectProvider)
TransferDeserializableObject(Object)

Sérialise l’objet sortant à l’aide d’un IDeserializableObject, puis appelle TransferData. Lors du retour désérialise les données entrantes et retourne l’objet encapsulé dans un IDeserializableObject.

(Hérité de IVisualizerObjectProvider2)
TransferDeserializableObjectAsync(Object, CancellationToken)

Sérialise l’objet sortant à l’aide d’un IDeserializableObject, puis appelle une version asynchrone de TransferData. Lors du retour désérialise les données entrantes et retourne l’objet encapsulé dans un IDeserializableObject.

TransferObject(Object)
Obsolète.

Sérialise l’objet sortant à l’aide de la sérialisation par défaut, puis appelle TransferData. Lors du retour désérialise les données entrantes et retourne l’objet désérialisé

(Hérité de IVisualizerObjectProvider)

S’applique à