JSON.net反序列化 [英] JSON.net Deserializing

查看:194
本文介绍了JSON.net反序列化的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我是JSON编码字符串。我也有C#类:

I have a string which is JSON encoded. I'm also having C# class:

class Pupu{
    public static List<Pupu> plist = new List<Pupu>();
    public string user {get; set;}
    public string number {get; set;}
}


[{"user":"27FFBADD7284E5CB98EAC45559589E28FDDDC3AD","number":"62827"},{"user":"27FFBADD7284E5CB98EAC45559589E28FDDDC3AD","number":"30460"}, {"user":"0D27D44D40C5185423078B3C93B3E6B596AD21A0","number":"25143"}, {"user":"0D27D44D40C5185423078B3C93B3E6B596AD21A0","number":"22776"}, {"user":"27FFBADD7284E5CB98EAC45559589E28FDDDC3AD","number":"19755"}]

我与desirializing吧:

I am desirializing it with:

 plist = JsonConvert.DeserializeObject<List<Pupu>>(stringAbove);



我不断收到:

I am keep getting:

 Attempt to access the method failed: System.Collections.Generic.List`1..ctor();



谢谢,我现在正在找这为几个小时。 (我很新的C#)

Thanks, I'm looking for this for few hours now. (I'm pretty new to C#).

推荐答案

让我们试着清理你的代码:

Let's try to clean up your code:

public class Score
{
    public string user { get; set; }
    public string number { get; set; }
}

和现在你可以反序列化JSON成分数的列表:

and now you can deserialize the JSON into a list of scores:

List<Score> plist = JsonConvert.DeserializeObject<List<Score>>(stringAbove);

和这里有一个完整的例子:

and here's a full example:

public class Score
{
    public string user { get; set; }
    public string number { get; set; }
}

class Program
{
    static void Main()
    {
        var json = "[{\"user\":\"27FFBADD7284E5CB98EAC45559589E28FDDDC3AD\",\"number\":\"62827\"},{\"user\":\"27FFBADD7284E5CB98EAC45559589E28FDDDC3AD\",\"number\":\"30460\"}, {\"user\":\"0D27D44D40C5185423078B3C93B3E6B596AD21A0\",\"number\":\"25143\"}, {\"user\":\"0D27D44D40C5185423078B3C93B3E6B596AD21A0\",\"number\":\"22776\"}, {\"user\":\"27FFBADD7284E5CB98EAC45559589E28FDDDC3AD\",\"number\":\"19755\"}]";
        List<Score> plist = JsonConvert.DeserializeObject<List<Score>>(json);

        foreach (Score score in plist)
        {
            Console.WriteLine("user: {0}, number: {1}", score.user, score.number);    
        }
    }
}

这篇关于JSON.net反序列化的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆