CodeDomSerializerBase.DeserializeExpression Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Verilen ifadeyi bellek içi bir nesneye seri durumdan çıkartır.
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
Parametreler
- manager
- IDesignerSerializationManager
Serileştirme IDesignerSerializationManager için kullanılacak.
- name
- String
İfadeden kaynaklanan nesnenin adı. Nesnenin adlandırılması gerekmiyorsa olabilir null .
- expression
- CodeExpression
CodeExpression Yorum için.
Döndürülenler
yorumlanmasından expressionkaynaklanan bir nesne.
Açıklamalar
Bu, türetilmiş sınıfların bir ifadeyi seri durumdan çıkarmak için çağırabileceği yardımcı bir yöntemdir. parametresi tarafından belirtilen CodeDOM ifadesini yorumlayıp yürüterek deyimini seri durumdan expression çıkartır ve ardından sonuçları döndürür. Bu ifadenin bir sonucu olarak bir nesne oluşturulması gerekiyorsa, parametresi tarafından name belirtilen ad verilir. Nesnenin adlandırılması gerekmiyorsa ad olabilir null . Aşağıdaki tabloda belirli ifadelerin nasıl işleneceğini açıklanmaktadır.
| Expression | Behavior |
|---|---|
| CodeThisReferenceExpression | Bu ifade veya thisöğesini temsil ederMe. Yöntemi, DeserializeExpression bu ifadeyle ilişkili nesneyi bulmak için bağlam yığınında bir RootContextöğesini arar. Bu nesne, grafiğin kök nesnesini ve onu temsil eden ifadeyi içerir. Nesne varsa ve ifade eşleşiyorsa, kök nesne döndürülür. Bir örnek bulunamıyorsa bir hata bildirilir. |
| CodeFieldReferenceExpression | Alan başvurusunun hedefi kök nesne olarak değerlendirilirse, GetInstance ad temelinde nesne örneğini almak için yönetici parametresinin yöntemi kullanılır. Aksi takdirde, istenen alanı bulmak için hedef nesneye karşı standart yansıma kullanılır. Alan bulunamıyorsa bir hata bildirilir. |
| CodeVariableReferenceExpression |
GetInstance parametresinin manager yöntemi, verilen değişken adını temsil eden örneği bulmak için kullanılır. Bir örnek bulunamıyorsa bir hata bildirilir. |
DeserializeExpression bir nesneye tamamen çözümlenene kadar veya ifadeyi artık basitleştirene kadar ifadeleri yorumlamaya devam eder. Bu durumda, DeserializeExpression en basitleştirilmiş ifadeyi içeren bir CodeExpression döndürür. Aşağıdaki ifadeler desteklenmez: