JavaScriptConverter.Deserialize メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
派生クラスでオーバーライドされた場合、提供されたディクショナリを、指定された型のオブジェクトに変換します。
public:
abstract System::Object ^ Deserialize(System::Collections::Generic::IDictionary<System::String ^, System::Object ^> ^ dictionary, Type ^ type, System::Web::Script::Serialization::JavaScriptSerializer ^ serializer);
public abstract object Deserialize (System.Collections.Generic.IDictionary<string,object> dictionary, Type type, System.Web.Script.Serialization.JavaScriptSerializer serializer);
abstract member Deserialize : System.Collections.Generic.IDictionary<string, obj> * Type * System.Web.Script.Serialization.JavaScriptSerializer -> obj
Public MustOverride Function Deserialize (dictionary As IDictionary(Of String, Object), type As Type, serializer As JavaScriptSerializer) As Object
パラメーター
- dictionary
- IDictionary<String,Object>
名前/値ペアとして格納されているプロパティ データの IDictionary<TKey,TValue> インスタンス。
- type
- Type
生成されるオブジェクトの型。
- serializer
- JavaScriptSerializer
JavaScriptSerializer インスタンス。
戻り値
逆シリアル化されたオブジェクト。
注意 (実装者)
このメソッドは Deserialize(IDictionary<String,Object>, Type, JavaScriptSerializer) 、パラメーター内の値を反復処理して、 dictionary
パラメーターで要求された型のインスタンスを type
構築します。 コンバーターは直接値 dictionary
を使用できますが、コンバーターの実装者は代わりにこのメソッドを ConvertToType<T>(Object) 使用することをお勧めします。 コンバーターは、パラメーターから使用できるインスタンスの JavaScriptSerializer このメソッドを呼び出す serializer
必要があります。
この ConvertToType<T>(Object) メソッドを使用すると、コンバーターから dictionary
プロパティ値を渡し、期待される型の値を返すことができます。 場合によっては、カスタム型のコンバーターが、自身が登録されたコンバーターを持つプロパティを操作している場合があります (たとえば、型 A に型 B のプロパティがあり、型 B もカスタム コンバーターに関連付けられています)。 その場合、呼び出すと ConvertToType<T>(Object) 、ディクショナリに含まれるプロパティ データに対してカスタム コンバーターが再帰的に呼び出されるようになります。 コンバーターは、ディクショナリ内のすべてのエントリを反復処理すると、ターゲット型の構築されたインスタンスを返します。
逆シリアル化中にコンバーターで問題が発生した場合は、その問題を InvalidOperationException 説明するエラーをスローする必要があります。