リフレクションに基づいて一連のオブジェクトを動的に構築し、それをシリアル化するプロジェクトを行っています(json.netを使用)。
私がやりたいのは、それをデシリアライズしてオブジェクト ツリーを再作成することですが、最終的なクラス タイプがわかりません。
では、どうすれば知ることができますか?
次に例を示します。
public class insideBleah
{
public int BProperty
{ get; set; }
}
public class bleah
{
public int AProperty
{ get; set; }
public insideBleah Inside
{ get; set; }
}
と
var bleah = new bleah();
bleah.AProperty = 1;
bleah.Inside = new insideBleah();
bleah.Inside.BProperty = 2;
var output = JsonConvert.SerializeObject(bleah, new JsonSerializerSettings()
{
TypeNameHandling = TypeNameHandling.Objects
});
これにより、出力文字列が生成されます。
"{\"$type\":\"jsontest.bleah, jsontest\",\"AProperty\":1,\"Inside\":{\"$type\":\"jsontest.insideBleah, jsontest\",\"BProperty\":2}}"
だから私はそこにクラスを見ることができます。とても近いです!しかし、私は情報をからかうことができないようです。
これどうやってするの?私はできません:
var newObject = (bleah)JsonConvert.DeserializeObject<bleah>(output);
私はそれが「ブレ」であることを知らないからです。
どうすればこれを処理できますか?
前もって感謝します