首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

求以次无KEY的JSON数据反序列化

2013-07-20 
求以下无KEY的JSON数据反序列化数据如下:{code: 200,status: OK,result: {\0130513113839835855

求以下无KEY的JSON数据反序列化
数据如下:
  

{
  "code": 200,
  "status": "OK",
  "result": "{"0130513113839835855":{"PassengerID":"3f4124f7-e68d-400a-823f-f9eb506856a7","PassengerName":"吉吉","TicketNumber":""}}"
}



我在做的时候,不知道对"0130513113839835855"  怎么处理了 json 行业数据 C# asp.net
[解决办法]
{
  "code": 200,
  "status": "OK",
  "result": "{"0130513113839835855":{"PassengerID":"3f4124f7-e68d-400a-823f-f9eb506856a7","PassengerName":"吉吉","TicketNumber":""}}"
}

result=
{
"0130513113839835855":{"PassengerID":"3f4124f7-e68d-400a-823f-f9eb506856a7","PassengerName":"吉吉","TicketNumber":""}
}


result结果又是一个序列而已
[解决办法]
用你的数据写了一个demo
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Dynamic;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            var s = @"
{
  ""code"": 200,
  ""status"": ""OK"",
  ""result"": ""{""0130513113839835855"":{""PassengerID"":""3f4124f7-e68d-400a-823f-f9eb506856a7"",""PassengerName"":""吉吉"",""TicketNumber"":""""}}""
}";
            dynamic a = JsonConvert.DeserializeObject<ExpandoObject>(s);
            dynamic b = JsonConvert.DeserializeObject<ExpandoObject>(a.result);
            var d = (IDictionary<string, object>)b;
            Console.WriteLine("a.status={0}", a.status);


            dynamic c= d["0130513113839835855"];
            Console.WriteLine("b.0130513113839835855.PassengerName={0}",c.PassengerName);
            Console.ReadLine();
        }
    }
}


[解决办法]
 

 public class Passenger
        {
            public string PassengerID { set; get; }
            public string PassengerName { set; get; }
            public string TicketNumber { set; get; }
        }
        public class a
        {
            public int code { set; get; }
            public string status { set; get; }
            public string result { set; get; }
        }

string json = @"
                    {
                      ""code"": 200,
                      ""status"": ""OK"",
                      ""result"": ""{""0130513113839835855"":{""PassengerID"":""3f4124f7-e68d-400a-823f-f9eb506856a7"",""PassengerName"":""吉吉"",""TicketNumber"":""""}}""
                    }";
 
           var info= JsonConvert.DeserializeObject<a>(json);
           var passenger = JsonConvert.DeserializeObject<Dictionary<string, Passenger>>(info.result);


           var PassengerName = passenger.First().Value.PassengerName;



我自己测试没问题

热点排行