没找到有关问题的原因在哪里 求高手帮忙~
没找到问题的原因在哪里 求高手帮忙~~~
最近正在写一个小爬虫 获取到的源码如下:
反序列化的类:
使用的代码:
求高手看一下我错在哪里 我觉得没错呀~~
------解决方案--------------------
楼主,送你段可用代码
------解决方案--------------------
private int gbSpv;应该是string吧
最近正在写一个小爬虫 获取到的源码如下:
{
"content": {
"data": {
"list": [
{
"cat": "长城润滑油",
"zro": "印度神油"
},
{
"cat": "gass气",
"zro": "中石化基友"
}
],
"allPage": 10
},
"code": 0
},
"hasError": false
}
反序列化的类:
class SCK_Class
{
private Content_Class content;
private bool hasError;
}
public class Content_Class
{
private Data_Class data;
private int code;
}
public class Data_Class
{
private List_Class[] list;
private int allPage;
}
public class List_Class
{
private string cat;
private int gbSpv;
}
使用的代码:
var sw = new DataContractJsonSerializer(typeof(SCK_Class));
var obj = (SCK_Class)sw.ReadObject(new MemoryStream(Encoding.Unicode.GetBytes(str)));
//下面的一句会出错:未将对象引用设置到对象的实例。
MessageBox.Show(obj.content.data.list.Length.ToString());
求高手看一下我错在哪里 我觉得没错呀~~
------解决方案--------------------
楼主,送你段可用代码
[DataContract]
class SCK_Class
{
[DataMember(Name = "content")]
public Content_Class content { get; set; }
[DataMember(Name = "hasError")]
public bool hasError { get; set; }
}
[DataContract]
public class Content_Class
{
[DataMember(Name = "data")]
public Data_Class data { get; set; }
[DataMember(Name = "code")]
public int code { get; set; }
}
[DataContract]
public class Data_Class
{
[DataMember(Name = "list")]
public List_Class[] list { get; set; }
[DataMember(Name = "allPage")]
public int allPage { get; set; }
}
[DataContract]
public class List_Class
{
[DataMember(Name = "cat")]
public string cat { get; set; }
[DataMember(Name = "zro")]
public string gbSpv { get; set; }
}
------解决方案--------------------
private int gbSpv;应该是string吧