我正在尝试反序列化从外部源接收的一些JSON(无法更改它),并且我遇到了一些问题。我正在使用JSON.net进行反序列化,这是我收到的一个例子:
{
"uploaded":
{
"name":"Uploaded by me",
"size":3768,
"last_change_time":1310470698
},
"tagged":
{
"name":"Photos I'm tagged in",
"size":6937,
"last_change_time":1311730303
},
"4019677_60607060":
{
"name":"Asad",
"size":63,
"last_change_time":1271315304
},
"4611824_60607060":
{
"name":"ASDF",
"size":64,
"last_change_time":1262645480
}
}
这样,我创建了一个对象Albums和一个对象Album
[DataContract]
public class Albums
{
[DataMember]
public Album uploaded { get; set; }
[DataMember]
public Album tagged { get; set; }
}
[DataContract]
public class Album
{
[DataMember]
public string name { get; set; }
[DataMember]
public int size { get; set; }
[DataMember]
public int last_change_time { get; set; }
}
正如你所看到的,使用Albums对象我遇到了问题,因为我无法知道专辑的id是什么,因此,我无法在具有该ID的专辑中创建一个字段。上传和标记的字段atre我认为在JSON.net中应该有一个选项来实现这一点,但我找不到它...
谢谢大家
答案 0 :(得分:1)
您是否尝试将其反序列化为Dictionnary<string,Album>
?