.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; } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д