我正在尝试使用 C# 解析我从他们的 Rest API 获得的这个 Google 日历响应,但我似乎一直卡住了。 [已编辑] 更新,@ 符号不会阻止向下钻取,我通过将 @
替换为 _at_
进行了验证。看快看截图:
我确定我访问的不正确...
这是我要解析的 jsonString
:
{
"kind": "calendar#freeBusy",
"timeMin": "2015-06-12T14:00:00.000Z",
"timeMax": "2015-06-14T14:00:00.000Z",
"calendars": {
"joe@bobs.com": {
"busy": [
{
"start": "2015-06-13T18:30:00Z",
"end": "2015-06-13T19:30:00Z"
},
{
"start": "2015-06-13T20:30:00Z",
"end": "2015-06-13T21:30:00Z"
},
{
"start": "2015-06-13T23:00:00Z",
"end": "2015-06-14T00:00:00Z"
}
]
}
}
}
我试过使用:
dynamic myObj = Json.Decode(jsonString);
和
var myObj = JsonConvert.DeserializeObject(jsonString);
但我不知道如何进入 joe@bobs.com
键(根据我发送的内容是动态的)来循环所有繁忙时间。
想法?
最佳答案
您可以通过字符串索引器访问它:
var myObj = JsonConvert.DeserializeObject<dynamic>(jsonString);
Console.WriteLine(myObj.calendars["joe@bobs.com"]);
关于c# - 使用动态键将 Json 解析为动态 c# 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30823027/