Json.NET使用入门(四)【复杂Json反序列化】

人一旦觉悟,就会放弃追寻身外之物,而开始追寻内心世界的真正财富。

相关实体类:

public  class RsponseJson
    {

        [JsonProperty("msgType")]
        public string MsgType { get; set; }

        [JsonProperty("msgObj")]
        public string MsgObj { get; set; }
    }
public class MsgObjModel
    {

        [JsonProperty("sign")]
        public string Sign { get; set; }

        [JsonProperty("params")]
        public DicPara dicPara { get; set; }
    }
public  class DicPara
    {

        [JsonProperty("plateNo")]
        public string PlateNo { get; set; }

        [JsonProperty("parkIndexcode")]
        public string ParkIndexcode { get; set; }

        [JsonProperty("preFee")]
        public decimal PreFee { get; set; }

        [JsonProperty("action")]
        public string Action { get; set; }

        [JsonProperty("cloudEnterId")]
        public string CloudEnterId { get; set; }

        [JsonProperty("orderCode")]
        public string OrderCode { get; set; }

        [JsonProperty("cloudParkId")]
        public string CloudParkId { get; set; }
    }

Program.CS代码:

class Program
    {
        static void Main(string[] args)
        {
            //方法
            string jsonstr = @"{""msgType"":""ORDER_PAY_SUCCESS"",""msgObj"":""{\""sign\"":\""1e7068bacxxxxxxxxxxxxxxxxxxxxxxx\"",\""params\"":{\""plateNo\"":\""浙A99999\"",\""parkIndexcode\"":\""111\"",\""preFee\"":100.00,\""action\"":\""queryPreFee\"",\""cloudEnterId\"":\""111\"",\""orderCode\"":\""0719141034-6481\"",\""cloudParkId\"":\""PI1482457208756202110\""}}""}";


            RsponseJson Jm = JsonConvert.DeserializeObject<RsponseJson>(jsonstr);
            MsgObjModel jmodel = JsonConvert.DeserializeObject<MsgObjModel>(Jm.MsgObj);
        }
    }
static void Main(string[] args)
        {
           //方法二,无需任何实体类
            string jsonstr = @"{""msgType"":""ORDER_PAY_SUCCESS"",\""cloudParkId\"":\""PI1482457208756202110\""}}""}";

            JObject jsonSearch = JObject.Parse(jsonstr);
            string haha = jsonSearch["msgType"].ToString();
            string  msgObjstr = jsonSearch["msgObj"].ToString();

            JObject msgObjModel= JObject.Parse(msgObjstr);
            string chepai = msgObjModel["sign"].ToString();
            string plateNo = msgObjModel["params"]["plateNo"].ToString();
        }

相关文章

AJAX是一种基于JavaScript和XML的技术,能够使网页实现异步交...
在网页开发中,我们常常需要通过Ajax从后端获取数据并在页面...
在前端开发中,经常需要循环JSON对象数组进行数据操作。使用...
AJAX(Asynchronous JavaScript and XML)是一种用于创建 We...
AJAX技术被广泛应用于现代Web开发,它可以在无需重新加载页面...
Ajax是一种通过JavaScript和HTTP请求交互的技术,可以实现无...