CodeDomSerializerBase.DeserializeExpression メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
指定した式をメモリ内オブジェクトに逆シリアル化します。
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
パラメーター
- manager
- IDesignerSerializationManager
シリアル化に使用する IDesignerSerializationManager。
- name
- String
式の結果として作成されるオブジェクトの名前。 オブジェクトに名前を付ける必要がない場合は、null
でもかまいません。
- expression
- CodeExpression
解釈する CodeExpression。
戻り値
expression
の解釈の結果として作成されたオブジェクト。
注釈
これは、派生クラスが式を逆シリアル化するために呼び出すことができるヘルパー メソッドです。 パラメーターで指定された CodeDOM 式を解釈して実行することでステートメントを expression
逆シリアル化し、結果を返します。 この式の結果としてオブジェクトを作成する必要がある場合は、 パラメーターで指定された名前が name
指定されます。 オブジェクトに名前を付ける必要がない場合は、 という名前を指定できます null
。 次の表では、特定の式の処理方法について説明します。
Expression | 動作 |
---|---|
CodeThisReferenceExpression | この式は または Me を表しますthis 。 この式に関連付けられているオブジェクトを見つけるために、 DeserializeExpression メソッドは コンテキスト スタックで を RootContext検索します。 このオブジェクトには、グラフのルート オブジェクトと、それを表す式が含まれます。 オブジェクトが存在し、式が一致する場合は、ルート オブジェクトが返されます。 インスタンスが見つからない場合は、エラーが報告されます。 |
CodeFieldReferenceExpression | フィールド参照のターゲットがルート オブジェクトに評価された場合、 GetInstance manager パラメーターのメソッドを使用して、名前に基づいてオブジェクト インスタンスを取得します。 それ以外の場合は、要求されたフィールドを見つけるためにターゲット オブジェクトに対して標準リフレクションが使用されます。 フィールドが見つからない場合は、エラーが報告されます。 |
CodeVariableReferenceExpression | GetInstanceパラメーターの メソッドはmanager 、指定された変数名を表すインスタンスを見つけるために使用されます。 インスタンスが見つからない場合は、エラーが報告されます。 |
DeserializeExpression は、オブジェクトに完全に解決されるまで、または式を簡略化できなくなるまで、式を解釈し続けます。 この場合、 DeserializeExpression は最も簡略化された式を含む を CodeExpression 返します。 次の式はサポートされていません。
適用対象
こちらもご覧ください
.NET