CodeDomSerializerBase.DeserializeExpression Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Deserializuje podane wyrażenie do obiektu w pamięci.
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
Parametry
- manager
- IDesignerSerializationManager
Element IDesignerSerializationManager do użycia do serializacji.
- name
- String
Nazwa obiektu, który wynika z wyrażenia. Może to być null
, jeśli nie ma potrzeby nazywania obiektu.
- expression
- CodeExpression
Element CodeExpression do zinterpretowania.
Zwraca
Obiekt wynikający z interpretacji expression
elementu .
Uwagi
Jest to metoda pomocnika, którą klasy pochodne mogą wywoływać w celu deserializacji wyrażenia. Deserializuje instrukcję, interpretując i wykonując wyrażenie CodeDOM określone przez expression
parametr, a następnie zwraca wyniki. Jeśli obiekt musi zostać utworzony w wyniku tego wyrażenia, otrzyma nazwę określoną przez name
parametr . Nazwa może być taka null
, jeśli nie ma potrzeby nazywania obiektu. W poniższej tabeli opisano sposób obsługi określonych wyrażeń.
Wyrażenie | Zachowanie |
---|---|
CodeThisReferenceExpression | To wyrażenie reprezentuje this lub Me . Aby zlokalizować obiekt skojarzony z tym wyrażeniem, DeserializeExpression metoda będzie wyglądać w stosie kontekstu dla elementu RootContext. Ten obiekt zawiera obiekt główny grafu i wyrażenie, które go reprezentuje. Jeśli obiekt jest obecny, a wyrażenie jest zgodne, obiekt główny zostanie zwrócony. Zgłaszany jest błąd, jeśli nie można znaleźć wystąpienia. |
CodeFieldReferenceExpression | Jeśli element docelowy odwołania do pola zostanie obliczony dla obiektu głównego, GetInstance metoda parametru menedżera zostanie użyta do pobrania wystąpienia obiektu na podstawie nazwy. W przeciwnym razie standardowe odbicie jest używane względem obiektu docelowego w celu zlokalizowania żądanego pola. Zgłaszany jest błąd, jeśli nie można znaleźć pola. |
CodeVariableReferenceExpression | Metoda GetInstance parametru manager służy do lokalizowania wystąpienia reprezentującego daną nazwę zmiennej. Zgłaszany jest błąd, jeśli nie można znaleźć wystąpienia. |
DeserializeExpression kontynuuje interpretowanie wyrażeń, dopóki nie zostaną całkowicie rozwiązane z obiektem lub dopóki nie będzie już można uprościć wyrażenia. W takim przypadku DeserializeExpression zostanie zwrócone wyrażenie CodeExpression zawierające najbardziej uproszczone wyrażenie. Następujące wyrażenia nie są obsługiwane: