CodeDomSerializerBase.DeserializeExpression Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
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);
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 résultant 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 la façon dont des expressions spécifiques sont gérées.
| Expression | Behavior |
|---|---|
| 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 la représente. Si l’objet est présent et que l’expression correspond, l’objet racine est retourné. Une erreur est signalée si une instance ne peut pas être localisée. |
| CodeFieldReferenceExpression | Si la cible de la référence de champ correspond à l’objet racine, la GetInstance méthode du paramètre de gestionnaire est utilisée pour récupérer l’instance d’objet en fonction du nom. Sinon, la réflexion standard est utilisée par rapport à l’objet cible pour localiser le champ demandé. Une erreur est signalée si le champ ne peut pas être localisé. |
| CodeVariableReferenceExpression | La GetInstance méthode du manager paramètre est utilisée pour localiser l’instance représentant le nom de variable donné. Une erreur est signalée si une instance ne peut pas être localisée. |
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 une CodeExpression expression qui contient l’expression la plus simplifiée. Les expressions suivantes ne sont pas prises en charge :