Json.NET使用入门(四)【复杂Json反序列化】
发布时间:2020-12-16 18:50:17 所属栏目:百科 来源:网络整理
导读:人一旦觉悟,就会放弃追寻身外之物,而开始追寻内心世界的真正财富。 相关实体类: public class RsponseJson { [JsonProperty( "msgType" )] public string MsgType { get ; set ; } [JsonProperty( "msgObj" )] public string MsgObj { get ; set ; } } pub
人一旦觉悟,就会放弃追寻身外之物,而开始追寻内心世界的真正财富。相关实体类: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();
}
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |