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

本文关键字:属性 RPC 返回 数字 JSON | 更新日期: 2023-09-27 18:31:17

我从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 字符串发送的属性名称相同?

任何帮助都非常感谢!

编辑!找到了解决方案!通过添加 [JsonProperty("1")] ..等到无效的名称字符串,问题自行解决!棒!

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

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