RestSharp não desserializando a lista de objetos JSON, sempre nula

Estou tendo um problema com o RestSharp desserializando o conteúdo de retorno em minhas classes. De toda a minha pesquisa parece que estou fazendo isso corretamente. Eu prefiro muito mais usar o desserializador do RestSharp do que ter que voltar para outro pacote como o Json.NET da Newstonsoft.

O que estou fazendo é fazer uma solicitação de API ao GoToWebinar para toda a lista de Webinars agendados:

<code>var client = new RestClient(string.Format("https://api.citrixonline.com/G2W/rest/organizers/{0}/upcomingWebinars", "300000000000239000"));
var request = new RestRequest(Method.GET);
request.AddHeader("Authorization", "OAuth oauth_token=" + System.Configuration.ConfigurationManager.AppSettings["GoToWebinar"]);
var response2 = client.Execute<List<RootObject>>(request);
</code>

Como você vê, eu gostaria de obter uma lista do objeto 'RootObject' (como mostrado abaixo). Estou recebendo a seguinte resposta JSON em response2.Content:

<code>[
   {
      "webinarKey":678470607,
      "subject":"Easton's Wild Rice Cooking Demo",
      "description":"Lorem ipsum dolor sit amet, consectetur adipiscing elit.",
      "organizerKey":300000000000239551,
      "times":[{"startTime":"2012-05-09T15:00:00Z","endTime":"2012-05-09T16:00:00Z"}],
      "timeZone":"America/Denver"
   },
   {
      "webinarKey":690772063,
      "subject":"Easton's Match Making Service",
      "description":"Lorem ipsum dolor sit amet, consectetur adipiscing elit.",
      "organizerKey":300000000000239551,
      "times":[{"startTime":"2012-05-09T15:00:00Z","endTime":"2012-05-09T16:00:00Z"}],
      "timeZone":"America/Denver"
   }
]
</code>

Eu criei os seguintes objetos usandohttp://json2csharp.com usando os resultados do JSON acima:

<code>public class RootObject
{
    public int webinarKey { get; set; }
    public string subject { get; set; }
    public string description { get; set; }
    public long organizerKey { get; set; }
    public List<Time> times { get; set; }
    public string timeZone { get; set; }
}

public class Time
{
    public string startTime { get; set; }
    public string endTime { get; set; }
}
</code>

O problema é response2.Data é sempre nulo. Por algum motivo, a desserialização falhou e não sei por quê. Meu objetivo é poder usar um loop foreach para percorrer os resultados:

<code>foreach(RootObject r in response2.Data)
{
    lblGoToWebinar.Text += r.webinarKey.ToString() + ", ";
}
</code>

Alguma idéia de por que a desserialização está falhando?

questionAnswers(2)

yourAnswerToTheQuestion