Разбор JSON API на C#

так что я новичок в программировании, но хочу углубиться в него. Недавно я начал участвовать в проекте по созданию программы WinForm для веб-сайта, использующего систему API в JSON.

Я никогда раньше не пользовался API, поэтому не совсем понимаю, как он работает, но, посмотрев на него несколько минут, я, кажется, уловил суть. Чего я не понимаю, так это того, как именно работает разбор JSON в С#.

Я нашел эта ссылка после небольшого поиска в Google. И у меня это работает (отчасти) с этим кодом.

static void Main(string[] args)
{
        WebClient c = new WebClient();
        var vLogin = c.DownloadString("https://www.openraid.us/index.php/api/login/username/password");
        //Returns string 
        //{"status":1,"error":null,"token":"250-1336515541-c48d354d96e06d488d1a2530071ef07c9532da26"} 
        //Token = random, no decisive length*/
        JObject o = JObject.Parse(vLogin);
        Console.WriteLine("Login Status: " + o["status"]);
        String sToken = "" + o["token"];
        Console.WriteLine(sToken);
        Console.WriteLine("");
        //Breaks after this
        var myRaids = c.DownloadString("https://www.openraid.us/index.php/api/myraids/"+sToken);
        JObject r = JObject.Parse(myRaids); //error occurs here
        String sEventId = "" + r["event_id"];
        Console.WriteLine("Event ID: " + sEventId);
        Console.ReadLine();
}

Итак, мне кажется, что я проанализировал и обработал 1 страницу, но когда я перехожу ко второй, я получаю эту ошибку.

Ошибка чтения JObject из JsonReader. Текущий элемент JsonReader не является объектом: StartArray. Путь '', строка 1, позиция 1.

Итак, я думаю, мой вопрос заключается в том, как мне анализировать более 1 страницы или вызов JSON и как проще всего разбить каждый раздел объекта JSON (такие как status, errorи tokenв строки C#?

16
задан Cistoran 8 May 2012 в 22:25
поделиться