Partager via


IVisualizerObjectProvider3 Interface

Définition

Permet aux composants côté débogueur et débogué du visualiseur de coordonner le mécanisme de sérialisation à utiliser, et fournit des fonctionnalités supplémentaires pour passer des données au côté débogué en tenant compte du SelectedFormatterPolicy.

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

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

Stratégie de format que cette classe utilisera lors de la sérialisation/désérialisation des informations.

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)
DeserializeFromJson<T>(Stream, Object)

Désérialise les données au format Newtonsoft.Json du flux spécifié dans un objet d’un type spécifique.

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)
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)
GetObject<T>()

Obtient les données à l’aide GetData() de , puis tente de les désérialiser au type spécifié.

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.

(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)
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)
TransferObject<T>(Object)

Sérialise l’objet sortant à l’aide de , SelectedFormatterPolicy puis appelle TransferData(Stream). Lors du retour, il tente de désérialiser les données entrantes et retourne l’objet du type spécifié.

S’applique à