JSON RPC将数字作为属性名称返回

时间:2012-04-17 09:58:36

标签: c# json json-rpc

我从oracle服务器收到这个JSON字符串(一个非常大的一部分)(数据是不可更改的)但是现在我有一个繁琐的问题就是无法反序列化这个...

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

使用NewtonSoft.JSon创建类:

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; }
}

在尝试反序列化到类中时,我得到了一个很棒的错误: 无法评估表达。

有没有办法正确格式化,所以c#实现字符串NAME与JSON字符串发送的属性名称相同?

非常感谢任何帮助!

EDIT!找到了解决方案! 通过将[JsonProperty(“1”)] ..等添加到无效的名称字符串,问题解决了! 真棒!

1 个答案:

答案 0 :(得分:0)

在每个无效的属性名称上,添加属性:[JsonProperty("1")]