.NET 4.x Десериализация JSON - Object property name expected - C#
Формулировка задачи:
Здравствуйте, помогите пожалуйста. Пытаюсь сделать десериализацию JSON с помощью Newtonsoft.Json.
Eсть следующий запрос в формате JSON:
я создал следующие классы
Десериализацию провожу следующим образом:
Но получаю ошибку:
Как ее можно исправить?
Листинг программы
- response: {
- count: 59,
- items: [{
- id: 28261334,
- name: 'TJ',
- screen_name: 'tj',
- is_closed: 0,
- type: 'page',
- is_admin: 0,
- is_member: 0,
- photo_50: 'https://pp.vk.me/...f2c/06crfCSL1KY.jpg',
- photo_100: 'https://pp.vk.me/...f2b/PI7kwl3zvtQ.jpg',
- photo_200: 'https://pp.vk.me/...f2a/-XlzvdumPwQ.jpg'
- }]
- }
Листинг программы
- [DataContract]
- public class GroupsGet
- {
- [DataMember(Name = "count")]
- public string count { get; set; }
- [DataMember(Name = "items")]
- public List<Items> items { get; set; }
- }
- [DataContract]
- public class Items
- {
- [DataMember(Name = "id")]
- public string id { get; set; }
- [DataMember(Name = "name")]
- public string name { get; set; }
- [DataMember(Name = "members_count")]
- public string members_count { get; set; }
- }
Листинг программы
- if (response != null)
- {
- var strreader = new StreamReader(response.GetResponseStream(), Encoding.UTF8);
- var responseToString = strreader.ReadToEnd();
- JToken token = JToken.Parse(responseToString);
- _groupsGet = token["response"][0].ToObject<GroupsGet>();
- }
Accessed JObject values with invalid key value: 0. Object property name expected.
Решение задачи: «.NET 4.x Десериализация JSON - Object property name expected»
textual
Листинг программы
- using System.Collections.Generic;
- using Newtonsoft.Json;
- using Newtonsoft.Json.Serialization;
- internal class Program
- {
- private static void Main(string[] args)
- {
- var str = @"{
- 'response': {
- 'count': 59,
- 'items': [
- {
- 'id': 28261334,
- 'name': 'TJ',
- 'screen_name': 'tj',
- 'is_closed': 0,
- 'type': 'page',
- 'is_admin': 0,
- 'is_member': 0,
- 'photo_50': 'https://pp.vk.me/...f2c/06crfCSL1KY.jpg',
- 'photo_100': 'https://pp.vk.me/...f2b/PI7kwl3zvtQ.jpg',
- 'photo_200': 'https://pp.vk.me/...f2a/-XlzvdumPwQ.jpg'
- }
- ]
- }
- }
- ";
- var j = JsonConvert.DeserializeObject<MyClass>(str);
- }
- }
- public class Response
- {
- public int count { get; set; }
- public List<Item> items { get; set; }
- }
- public class Item
- {
- public int Id { get; set; }
- public string Name { get; set; }
- public string Screen_Name { get; set; }
- public int Is_Closed { get; set; }
- public string Type { get; set; }
- public int Is_Admin { get; set; }
- public int Is_Member { get; set; }
- public string Photo_50 { get; set; }
- public string Photo_100 { get; set; }
- public string Photo_200 { get; set; }
- }
- public class MyClass
- {
- public Response Response { get; set; }
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д