サーバーからJSONをシリアル化および逆シリアル化する方法として、Json.NET(http://james.newtonking.com/projects/json/help/ )を使用しています。次のJSONオブジェクトがあるとしましょう。
{
"user" : {
"name" : "Bob",
"age" : 35
},
"location" : "California"
}
これをネイティブタイプに逆シリアル化するために私が見つけることができる唯一の方法は、次のようにカスタムDTOを使用することです。
string jsonString = ""; // json string from above
Response result = JsonConvert.DeserializeObject<Response> (jsonString);
ここで、Responseクラスは次のようになります。
public class Response
{
[JsonProperty("user")]
public UserResponse User { get; set; }
[JsonProperty("location")]
public string Location { get; set; }
}
public class UserResponse
{
[JsonProperty("name")]
public string Name { get; set; }
[JsonProperty("age")]
public int Age { get; set; }
}
これをネイティブタイプに逆シリアル化したいのですが、JSON文字列がどのようになるかを常に把握しているとは限らない環境にいます...そのため、自分が何であるかが正確にわからない場合、カスタムDTOを使用するのは困難です。 mパイプを降りる。クラスをJsonConvert.DeserializeObject()に渡さないと、文字列やintなどのネイティブ型ではなくJson.NET型になります。これを回避する方法について何か提案はありますか?代わりに別のJSONライブラリを使用する必要がありますか?
ありがとう!