IVisualizerObjectProvider2 Interface

Définition

Fournit des fonctionnalités supplémentaires pour passer des données du débogué au visualiseur.

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
Dérivé
Implémente

Remarques

L’objet IVisualizerObjectProvider passé à DialogDebuggerVisualizerla méthode de Show(IDialogVisualizerService, IVisualizerObjectProvider) pour VS 16.10 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.

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.

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.

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)
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.

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.

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 à