我正在尝试使用C#从我的Rest API中解析此Google日历响应,但是我似乎一直陷于困境。 [编辑]更新,@符号不会阻止深入研究,我通过用@替换_at_进行了验证。请参阅快速观看的屏幕截图:

我确定我访问的不正确...

这是我要解析的jsonString:

{
 "kind": "calendar#freeBusy",
 "timeMin": "2015-06-12T14:00:00.000Z",
 "timeMax": "2015-06-14T14:00:00.000Z",
 "calendars": {
  "[email protected]": {
   "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);

但是我不知道如何进入[email protected] key (根据我发送的内容是动态的)来循环所有繁忙时间。

有想法吗?

最佳答案

您可以通过字符串索引器访问它:

var myObj = JsonConvert.DeserializeObject<dynamic>(jsonString);
Console.WriteLine(myObj.calendars["[email protected]"]);

09-25 16:59