JsonSerializer read c#

Подскажите пожалуйста, почему у меня возвращает значение 0 при json сериализации (должно 26285). Буду очень благодарен за помощь. Возможно я где-то ошибся, но никак не могу найти эту ошибку

static int GetMembersGroup(string path)
        {
            var json = path.ReadAllText();
            var obj = JsonConvert.DeserializeObject<Response>(json);

            return obj.count;
        }

Классы для JSON:

public class User
{
    public class City
    {
        public int id { get; set; }
        public string title { get; set; }
    }

    public class LastSeen
    {
        public byte platform { get; set; }
        public double time { get; set; }
    }

    public int id { get; set; }
    public string domain { get; set; }
    public City city { get; set; }
    public byte can_write_private_message { get; set; }
    public LastSeen last_seen { get; set; }
    public string first_name { get; set; }
    public string last_name { get; set; }
    public bool can_access_closed { get; set; }
    public bool is_closed { get; set; }

}
class Response
{
    public int count { get; set; }
    public List<User> items { get; set; }
    public string next_from { get; set; }

}

И собственно сам JSON:

{"response":{"count":26285,"items":[{"id":19471,"domain":"patihomirov","city":{"id":2,"title":"Санкт-Петербург"},"can_write_private_message":0,"last_seen":{"platform":4,"time":1674052825},"first_name":"Павел","last_name":"Тихомиров","can_access_closed":true,"is_closed":false},{"id":62133,"domain":"aerobicturochak","city":{"id":25,"title":"Барнаул"},"can_write_private_message":0,"last_seen":{"platform":7,"time":1674038856},"first_name":"Полина","last_name":"Рябова","can_access_closed":true,"is_closed":false},{"id":86765,"domain":"annaya","city":{"id":2,"title":"Санкт-Петербург"},"can_write_private_message":0,"last_seen":{"platform":7,"time":1674072293},"first_name":"Анна","last_name":"Цветкова","can_access_closed":false,"is_closed":true}],"next_from":"PUkGEFNHDhJkUVhGBQQW"}}

Я просто даже принцип сериализации не могу понять. Как компилятор понимает, какому полю соответствует какое-либо значение? Допустим первому полю - первое значение, второму - второе и т.д. или как?


Ответы (0 шт):