JSON RPC格式

时间:2012-04-16 11:10:47

标签: c# json json-rpc

在我的项目中,我必须向oracle服务器发送一个非常具体的JSON请求以接收响应; 目前我正在发送json字符串:

{\"id\":\"1\",\"method\":\"getOverviewInfo\",\"Params\":{\"overviewID\":\"0000004297\",\"overviewType\":\"Stock Items\",\"AORParams\":null,\"arrOptions\":{\"columnInfo\":\"1;100;1;1#\",\"orderInfo\":\"1;0;0#\"}}}" 来自这堂课:

public class SendOverview    {              

public string id   { get; set;}
                public string method { get; set;}
                public SendOV Params {get; set;}
    }

 public class SendOV    {               

public string overviewID { get; set; }
        public string overviewType { get; set; }
        public string AORParams { get; set; }
        public SentDatas arrOptions { get; set; }

    }   

public class SentDatas    {       

public string columnInfo { get; set; }
        public string orderInfo { get; set; }
    }

现在我的问题是,我可以调整请求字符串以从Params数组中删除成员名称,而不是 “overviewID”=“xxxx”,“overviewType”=“xxxx”.......

应该是 “XXXX”, “XXXX”

编辑格式化:

{
    "id": "1",
    "method": "getOverviewInfo",
    "Params": {
        "0000004297",
        "Stock Items",
        null,
        {
            "columnInfo": "1;100;1;1#",
            "orderInfo": "1;0;0#"
        }
    }
}

1 个答案:

答案 0 :(得分:0)

是的,你可以这样做,如果你这样做,你需要用array []替换对象{}作为参数的值。

像:

{
    "id": "1",
    "method": "getOverviewInfo",
    "Params": [
        "0000004297",
        "Stock Items",
        null,
        {
            "columnInfo": "1;100;1;1#",
            "orderInfo": "1;0;0#"
        }
    ]
}

我假设您想要这样做的原因是转移大小。您发送到的端点仍然需要知道如何读取该请求,如果它支持上述位置参数,您需要确保它们按正确的顺序放置,并保持不变。