CodeDomSerializerBase.SerializeToExpression 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.
Sérialise l’objet donné dans une expression.
protected:
System::CodeDom::CodeExpression ^ SerializeToExpression(System::ComponentModel::Design::Serialization::IDesignerSerializationManager ^ manager, System::Object ^ value);
protected System.CodeDom.CodeExpression SerializeToExpression(System.ComponentModel.Design.Serialization.IDesignerSerializationManager manager, object value);
protected System.CodeDom.CodeExpression? SerializeToExpression(System.ComponentModel.Design.Serialization.IDesignerSerializationManager manager, object? value);
member this.SerializeToExpression : System.ComponentModel.Design.Serialization.IDesignerSerializationManager * obj -> System.CodeDom.CodeExpression
Protected Function SerializeToExpression (manager As IDesignerSerializationManager, value As Object) As CodeExpression
Paramètres
- manager
- IDesignerSerializationManager
À IDesignerSerializationManager utiliser pour la sérialisation.
- value
- Object
Objet à sérialiser. Peut être null.
Retours
Objet CodeExpression s’il value peut être sérialisé ; sinon, null.
Exceptions
manager a la valeur null.
Remarques
Le value paramètre peut être null, auquel cas une expression primitive sera retournée.
La SerializeToExpression méthode utilise les règles suivantes pour sérialiser les types :
Il appelle d’abord la GetExpression méthode pour voir si une expression a déjà été créée pour l’objet. Si c’est le cas, elle retourne l’expression existante.
Il localise ensuite le sérialiseur de l’objet et lui demande de sérialiser.
Si la valeur de retour du sérialiseur de l’objet est a CodeExpression, l’expression est retournée.
Il effectue un dernier appel pour GetExpression voir si le sérialiseur a ajouté une expression.
Enfin, elle retourne
null.
Si aucune expression n’est créée et qu’aucun sérialiseur approprié n’est trouvé, une erreur est signalée par le biais du gestionnaire de sérialisation. Aucune erreur n’est signalée si un sérialiseur a été trouvé, mais qu’il n’a pas pu produire une expression. Dans ce cas, il est supposé que le sérialiseur a déjà signalé l’erreur ou qu’il n’a pas tenté de sérialiser l’objet.
Si le sérialiseur a retourné une instruction ou une collection d’instructions, ces instructions ne seront pas ignorées. La SerializeToExpression méthode recherche d’abord une StatementContext instruction dans la pile de contexte et ajoute des instructions à la propriété de l’objet de contexte d’instruction StatementCollection . S’il n’existe aucun contexte d’instruction, la SerializeToExpression méthode recherche dans le contexte un CodeStatementCollection et ajoute les instructions. Si aucun emplacement n’est trouvé pour ajouter les instructions, une erreur est générée.
Note
Vous ne devez pas appeler la SerializeToExpression méthode au sein Serialize de laquelle vous sérialisez votre propre objet. Au lieu de cela, vous devez appeler GetExpression. Si elle retourne null, créez votre propre expression et appelez SetExpression. Ensuite, passez au reste de votre sérialisation.