C# JsonObject.GetNamedObject()顺序
我正在尝试使用C# JsonObject.GetNamedObject()顺序,c#,.net,json,C#,.net,Json,我正在尝试使用Windows.Data.JSON读取JSON。但是出于某种原因,GetNamedObject()以一种非常愚蠢的方式返回我的对象 这是我的JSON: { "schedule":{ "schedule":{ "Monday":{ "1":{ "class":"oo5", "classroom":"K53" }, "2
Windows.Data.JSON
读取JSON。但是出于某种原因,GetNamedObject()以一种非常愚蠢的方式返回我的对象
这是我的JSON:
{
"schedule":{
"schedule":{
"Monday":{
"1":{
"class":"oo5",
"classroom":"K53"
},
"2":{
"class":"oo5",
"classroom":"K53"
}
},
"Tuesday":{
"2":{
"class":"biol6",
"classroom":"S12"
},
"8":{
"class":"loC",
"classroom":"126"
},
"9":{
"class":"loC",
"classroom":"126"
}
},
"Wednesday":{
"3":{
"class":"entlC",
"classroom":"K51"
}
},
"Thursday":{
"3":{
"class":"wisb3",
"classroom":"S29"
},
"8":{
"class":"inf8",
"classroom":"S22"
}
},
"Friday":{
"1":{
"name":"dhr. F. Lange de",
"class":"schk1",
"classroom":"S09"
}
"7":{
"name":"mw. O. Beek ter",
"class":"nat2",
"classroom":"S10"
}
}
}
}
}
注意:这是一个缩短的版本
我试着按照给定的顺序读出日期:“星期一、星期二、星期三、星期四、星期五”
我使用的是以下C代码:
当我使用调试器和查找JSON\u OBJ\u days
:
翻译:
Woensdag = Wednesday
Vrijdag = Friday
Donderdag = Thursday
Dinsdag = Tuesday
Maandag = Monday
因此,出于某种原因,GetNamedObject()以随机顺序返回其对象。这简直是脑筋急转弯!有人能告诉我为什么会这样,以及我如何解决这个问题吗 对象在JSON中没有顺序。您应该使用一个数组来保存项目的顺序 您的JSON应该类似于:
{
"schedule": {
"schedule": [
{
"name_day": "Monday",
"schedule": [
{
"class": "oo5",
"classroom": "K53"
},
{
"class": "oo5",
"classroom": "K53"
}
]
},
{
"name_day": "Tuesday",
"schedule": [
{
"class": "oo5",
"classroom": "K53"
},
{
"class": "oo5",
"classroom": "K53"
}
]
}
]
}
}
请注意,[而不是{.[”代表一个数组,其中{用于描述对象。我编辑了您的标题。请参见,“,其中一致意见是“不,他们不应该”@JohnSaunders谢谢!谢谢,我想问题可能是一个未考虑的对象的顺序。谢谢你确认。我会将此标记为我的答案。
{
"schedule": {
"schedule": [
{
"name_day": "Monday",
"schedule": [
{
"class": "oo5",
"classroom": "K53"
},
{
"class": "oo5",
"classroom": "K53"
}
]
},
{
"name_day": "Tuesday",
"schedule": [
{
"class": "oo5",
"classroom": "K53"
},
{
"class": "oo5",
"classroom": "K53"
}
]
}
]
}
}