WinForms C#.. 我得到了以下格式的JSON数据(见消息底部),并尝试使用以下代码进行反序列化:
using System.Web.Script.Serialization;
当我只有以下简单的JSON时返回:
{
"objects": [
{
"categoryid": "1",
"name": "funny",
"serverimageid": "1",
"dateuploaded": "2008-11-17 16:16:41",
"enabled": "1"
},
{
"categoryid": "2",
"name": "happy",
"serverimageid": "2",
"dateuploaded": "2008-11-17 16:17:00",
"enabled": "1"
},
{
"categoryid": "3",
"name": "sad",
"serverimageid": "3",
"dateuploaded": "2008-11-16 16:17:13",
"enabled": "1"
}
]
}
然后就很容易反序列化了:(哎呀... 有点糟糕)
// s is the string
s = s.Remove(0, 11);
// last }
int stringLength = s.Length;
s = s.Remove(stringLength - 1, 1);
listOfCategories = serializer1.Deserialize<List<Category>>(s);
在哪里
public class Category
{
public int categoryID;
public string name;
public int imageID;
public DateTime dateUpdated;
public int isActive;
public int displayOrder;
}
然而,现在我陷入了困境!尝试了一个列表的列表...但是却一无所获...
非常感谢任何帮助。
{
"objects": {
"categories": [
{
"name": "Congratulations",
"imageID": "1",
"isActive": "1",
"displayOrder": "0",
"dateUpdated": "2008-11-27 00:00:00"
},
{
"name": "Animals",
"imageID": "2",
"isActive": "1",
"displayOrder": "0",
"dateUpdated": "2008-11-26 00:00:00"
},
{
"name": "Romance",
"imageID": "3",
"isActive": "1",
"displayOrder": "0",
"dateUpdated": "2008-11-24 00:00:00"
}
],
"present": [
{
"presentID": "1",
"name": "Tiger",
"categoryID": "2",
"imageID": "1",
"dateUpdated": "2008-11-27",
"isActive": "1",
"isAnimated": null,
"isInteractive": null,
"isAdaptive": null,
"webLinkURL": null
},
{
"giphtID": "2",
"name": "Donkey",
"categoryID": "2",
"imageID": "2",
"dateUpdated": "2008-11-27",
"isActive": "1",
"isAnimated": null,
"isInteractive": null,
"isAdaptive": null,
"webLinkURL": null
},
{
"giphtID": "3",
"name": "Elephant",
"categoryID": "2",
"imageID": "3",
"dateUpdated": "2008-11-27",
"isActive": "1",
"isAnimated": null,
"isInteractive": null,
"isAdaptive": null,
"webLinkURL": null
}
]
}
}