“Cannot convert null to ”int“ because it is a non-nullable value type”

312
28 августа 2017, 05:43
 void GetMessages()
    {
        var _HttpRequest = new HttpRequest();
        string Response = HttpRequest.Get("https://api.vk.com/method/messages.getLastActivity?user_id=" + tbID.Text + "&access_token=" + ACCESS_TOKEN + "&v=5.68").ToString();
        dynamic JSON = JObject.Parse(Response);
        int Activity = JSON.online; /* 0 - offline, 1 - online */
    }

Вызов метода должен отправить такой ответ:

{"response":{"online":0,"time":1503753794}}

Где независимо от параметров я получаю ошибку, указывающая на строку:

int Activity = JSON.online;

Answer 1

У вас получается JObject, у которого есть свойство response, а уж в нём содержится JObject со свойством online.

При обращении к JSON.online JObject «на лету» создаёт пустое свойство со значением null, которое невозможно превратить в int.

Используйте

JSON.response.online
READ ALSO
Создание анимации загрузки WPF

Создание анимации загрузки WPF

Задача: сделать крутящийся кружок, пока приложение будет делать свои делаДля этой задачи пробовал использовать gif, но есть разные проблемы,...

645
Непонятен код в Pipelines.RIO

Непонятен код в Pipelines.RIO

Ковыряю исходники SystemIO

300
Создание файлов в FileTable по UNC-пути к каталогу используя C# (CLR SQL) - C#

Создание файлов в FileTable по UNC-пути к каталогу используя C# (CLR SQL) - C#

Привет! Есть тестовая процедурка, написанная на C# CLR SQL, которая потом работает как обычная хранимкаПроцедура пытается создать файл в сетевой...

379