Десериализация JSOND

Crate

Client
Регистрация
21.08.2014
Сообщения
17
Благодарностей
2
Баллы
3
В JSON нам приходит 4 значения сразу нескольки публикаций: id, shares, likes, comments. Если share = 0, в ответе приходит только 3 значения без share и код не может выполниться:
Ссылка на объект не указывает на экземпляр объекта.

Как сделать, чтоб при отсутствии класса share, в значение уходило 0?

очень спасибо :-)

Код:
string json = project.Variables["page_JSON_inline"].Value;  // тут наш json
var table = project.Tables["table"]; // Имя таблицы
RootObject obj = JsonConvert.DeserializeObject<RootObject>(json);

 
//перебираем все елементы обьекта
for (int i = 0; i < obj.data.Count; i++)
{
    //формируем строку
    string str = String.Format("{0};{1};{2};{3}",
        obj.data[i].id, // id
        obj.data[i].shares.count, // кол-во репостов
        obj.data[i].likes.summary.total_count, // кол-во лайков
        obj.data[i].comments.summary.total_count); // кол-во комментариев
    table.AddRow(str);
}
return 1;
 

Вложения

rostonix

Известная личность
Регистрация
23.12.2011
Сообщения
29 067
Благодарностей
5 707
Баллы
113
обернуть в try {} catch {}
 
  • Спасибо
Реакции: barkasian и Crate

Crate

Client
Регистрация
21.08.2014
Сообщения
17
Благодарностей
2
Баллы
3
Спасибо )
 

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)