次のようにクラスを設定しています。
public class Foo
{
public string string1 { get; set; }
public string string2 { get; set; }
public string string3 { get; set; }
}
Json.Net を使用して、次の Json 応答を逆シリアル化しています。
[
{
"number1": 1,
"number2": 12345678901234567890,
"number3": 3
},
{
"number1": 9,
"number2": 12345678901234567890,
"number3": 8
}
]
逆シリアル化コード:
string json = @"[
{
""number1"": 1,
""number2"": 12345678901234567890,
""number3"": 3
},
{
""number1"": 9,
""number2"": 12345678901234567890,
""number3"": 8
}
]"
List<Foo> foos = JsonConvert.DeserializeObject<List<Foo>>(json);
の値はnumber2を超えてInt64いますが、その値を取得することはあまり気にしません。number2プロパティを文字列にキャストする方法、または逆シリアル化中に完全に無視する方法はありますか?
[JsonConverter(typeof(string))]プロパティに属性を追加しようとしましたstring2が、次のエラーが表示されます: Error creating System.String。私も設定してみtypeof(decimal)ました。
私も使用してみ[JsonIgnore]ましたが、うまくいきません。