我刚从官方文档中复制了代码,刚刚更改了#34; Console.WriteLine" to" lblDebug.Text"。
string json = @"{
'Table1': [
{
'id': 0,
'item': 'item 0'
},
{
'id': 1,
'item': 'item 1'
}
]
}";
DataSet dataSet = JsonConvert.DeserializeObject<DataSet>(json);
DataTable dataTable = dataSet.Tables["Table1"];
lblDebug.Text += dataTable.Rows.Count +"";
// 2
foreach (DataRow row in dataTable.Rows)
{
lblDebug.Text += row["id"] + " - " + row["item"];
}
原始样本的结果:http://www.newtonsoft.com/json/help/html/DeserializeDataSet.htm
每次我编译它都会引发一个&#34; System.NullReferenceException&#34;在这一行
lblDebug.Text += dataTable.Rows.Count +"";
似乎dataTable是&#39; null&#39;。
编辑:我知道NullReferenceException是什么,但为什么会出现?我的意思是它是来自Json.Net页面的样本,我如何正确编写代码,所以我没有得到例外。