Reputation: 45
Hi guys I have a JSON like the one below
{
"totals": {
"tokenType": "string",
"tokenDenomination": "double",
"count": "int"
},
"IDCode": "string",
"Key": "string"
}
and c# code to deserialize in to object is
internal class GetTokenRootInfo
{
public static Totals totals{ get; set;}
public static string IDCode{ get; set;}
public static string Key{ get; set;}
}
When I use jsonconvert.DeserializeObject<gettokenrootinfo>(json);
nothing is being set and every var is a null.
But if I remove static types then everything works.
Can any one tell me the reason why static types are not working when deserializing the object?
Upvotes: 3
Views: 3487
Reputation: 129707
If you really want to deserialize to static members on the class, you can explicitly mark them with a [JsonProperty]
attribute, and that will allow it to work:
internal class GetTokenRootInfo
{
[JsonProperty("totals")]
public static Totals totals { get; set; }
[JsonProperty("IDCode")]
public static string IDCode { get; set; }
[JsonProperty("Key")]
public static string Key { get; set; }
}
Upvotes: 7