سؤال

I receive this JSON string (part of a really big one) back from an oracle server (data is unchangeable) but now I have the tedious problem of not being able to deserialize this..

 "rows":[
     {
        "1":"0000000001",
        "2":"SPARE00002",
        "5":"151.3354",
        "13":"100",
        "100000":"000000",
        "100001":"FFFFFF",
        "rowid":"0000000001"
     },

with using NewtonSoft.JSon it creates the class :

public class Row
{
    public string __invalid_name__1 { get; set; }
    public string __invalid_name__2 { get; set; }
    public string __invalid_name__5 { get; set; }
    public string __invalid_name__13 { get; set; }
    public string __invalid_name__100000 { get; set; }
    public string __invalid_name__100001 { get; set; }
    public string rowid { get; set; }
}

And while trying to deserialise into the class I get the awesome error : Could not evaluate expression.

Is there any way to format this correctly so c# realises the string NAME is the same as the property name sent by the JSON string?

Any help is highly appreciated!

EDIT! Found the solution! By adding [JsonProperty("1")] ..etc to the invalid name strings, the problem solved itself! Awesome!

هل كانت مفيدة؟

المحلول

On each of the invalid property names, add the attribute: [JsonProperty("1")]

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top