using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using Newtonsoft.Json; namespace WindowsFormsApplication1 { public partial class Form1 : Form { string str1 = @"{""javaClass"":""DataSet"",""success"":true,""metaData"":{""root"":""rows"",""successProperty"":""success""},""rows"":[{""xm"":""wang"",""xb"":""nan"",""mingzu"":""han"",""csrj"":""20140811""},{""xm"":""zhao"",""xb"":""nan"",""mingzu"":""han"",""csrj"":""20130811""},{""xm"":""zhang"",""xb"":""nv"",""mingzu"":""han"",""csrj"":""20150811""}]}"; public Form1() { InitializeComponent(); } public class ninaji { public string javaClass { get;set;} public string success { get; set; } public metaData metaData = new metaData(); public List<rows> bins { get; set; } //public List<rows> rows= new List<rows>(); } public class metaData { public string root { get;set;} public string successProperty { get; set; } }; public class rows { public string xm { get;set;} public string xb { get; set; } public string mingzu { get; set; } public string csrq { get; set; } }; private void Form1_Load(object sender, EventArgs e) { } private void button1_Click(object sender, EventArgs e) { ninaji nianji1 =new ninaji(); nianji1 = JsonConvert.DeserializeObject<ninaji>(str1); textBox1.Text = nianji1.bins.ToString(); } } }
提示未将对象引用到对象实例
解决方案:40分
估计你的类有问题,下面是本人用VS自动生成的json类
public class Rootobject { public string javaClass { get; set; } public bool success { get; set; } public Metadata metaData { get; set; } public Row[] rows { get; set; } } public class Metadata { public string root { get; set; } public string successProperty { get; set; } } public class Row { public string xm { get; set; } public string xb { get; set; } public string mingzu { get; set; } public string csrj { get; set; } }
反序列化代码
string json = @"{""javaClass"":""DataSet"",""success"":true,""metaData"":{""root"":""rows"",""successProperty"":""success""},""rows"":[{""xm"":""wang"",""xb"":""nan"",""mingzu"":""han"",""csrj"":""20140811""},{""xm"":""zhao"",""xb"":""nan"",""mingzu"":""han"",""csrj"":""20130811""},{""xm"":""zhang"",""xb"":""nv"",""mingzu"":""han"",""csrj"":""20150811""}]}"; var obj = JsonConvert.DeserializeObject<Rootobject>(json); Console.WriteLine(obj.rows[0].mingzu);