Partager via


CodeDomSerializerBase.DeserializeExpression Méthode

Définition

Désérialise l'expression donnée dans un objet en mémoire.

protected:
 System::Object ^ DeserializeExpression(System::ComponentModel::Design::Serialization::IDesignerSerializationManager ^ manager, System::String ^ name, System::CodeDom::CodeExpression ^ expression);
protected object DeserializeExpression (System.ComponentModel.Design.Serialization.IDesignerSerializationManager manager, string name, System.CodeDom.CodeExpression expression);
protected object? DeserializeExpression (System.ComponentModel.Design.Serialization.IDesignerSerializationManager manager, string? name, System.CodeDom.CodeExpression? expression);
member this.DeserializeExpression : System.ComponentModel.Design.Serialization.IDesignerSerializationManager * string * System.CodeDom.CodeExpression -> obj
Protected Function DeserializeExpression (manager As IDesignerSerializationManager, name As String, expression As CodeExpression) As Object

Paramètres

manager
IDesignerSerializationManager

IDesignerSerializationManager à utiliser pour la sérialisation.

name
String

Nom de l'objet qui résulte de l'expression. Peut être null s'il n'est pas nécessaire de nommer l'objet.

expression
CodeExpression

CodeExpression à interpréter.

Retours

Objet qui résulte de l'interprétation de expression.

Remarques

Il s’agit d’une méthode d’assistance que les classes dérivées peuvent appeler pour désérialiser une expression. Il désérialise l’instruction en interprétant et en exécutant l’expression CodeDOM spécifiée par le expression paramètre, puis retourne les résultats. Si un objet doit être créé à la suite de cette expression, il reçoit le nom spécifié par le name paramètre . Le nom peut être null s’il n’est pas nécessaire de nommer l’objet. Le tableau suivant décrit comment des expressions spécifiques sont gérées.

Expression Comportement
CodeThisReferenceExpression Cette expression représente this ou Me. Pour localiser l’objet associé à cette expression, la DeserializeExpression méthode recherche dans la pile de contexte un RootContext. Cet objet contient l’objet racine du graphe et l’expression qui le représente. Si l’objet est présent et que l’expression correspond, l’objet racine est retourné. Une erreur est signalée si un instance est introuvable.
CodeFieldReferenceExpression Si la cible de la référence de champ correspond à l’objet racine, la GetInstance méthode du paramètre manager est utilisée pour récupérer l’objet instance en fonction du nom. Sinon, la réflexion standard est utilisée sur l’objet cible pour localiser le champ demandé. Une erreur est signalée si le champ est introuvable.
CodeVariableReferenceExpression La GetInstance méthode du manager paramètre est utilisée pour localiser le instance représentant le nom de variable donné. Une erreur est signalée si un instance est introuvable.

DeserializeExpression continue d’interpréter les expressions jusqu’à ce qu’elles soient complètement résolues en objet, ou jusqu’à ce qu’elles ne puissent plus simplifier l’expression. Dans ce cas, DeserializeExpression retourne un CodeExpression qui contient l’expression la plus simplifiée. Les expressions suivantes ne sont pas prises en charge :

S’applique à

Voir aussi