Массив ошибок десериализации C# JSON

Я новичок в C# Я хочу десериализовать объект JSON в C#, но я получаю ошибку:

У нас возникла проблема: Невозможно десериализовать текущий массив JSON (например, [1,2,3]) в тип 'ZK4000_Example.JsonParser+user', поскольку для типа требуется объект JSON (например, {"name":"value"}) для десериализовать правильно. Чтобы исправить эту ошибку, измените JSON на объект JSON (например, {"name":"value"}) или измените десериализованный тип на массив или тип, который реализует интерфейс коллекции (например, ICollection, IList), например List, который может быть десериализованным из массива JSON. JsonArrayAttribute также можно добавить к типу, чтобы заставить его десериализоваться из массива JSON. Путь "Усуариос", строка 1, позиция 24.

Путь '', строка 1, позиция 1.

Я читал другие решения от других пользователей, которые имеют ту же проблему, но я не могу ее исправить.

Мой Джсон:

{
  "estado": 1,
  "usuarios": [
    {
      "nombre": "as",
      "id_usuario": "34",
      "huella_string": "1"
    },
    {
      "nombre": "ded",
      "id_usuario": "35",
      "huella_string": "1"
    },
    {
      "nombre": "sa",
      "id_usuario": "36",
      "huella_string": "1"
    },
    {
      "nombre": "xz",
      "id_usuario": "12",
      "huella_string": "1"
    },
    {
      "nombre": "asas,
      "id_usuario": "28",
      "huella_string": "1"
    },
    {
      "nombre": "asscass",
      "id_usuario": "7",
      "huella_string": "mspZVoOalsE9QQsrwkQBBSS/PoEMo8BCAQmiLS/BC5YuKYEVicJIQQkTQlFBCxDES4EPFbE+wQI0UkqBDYW5KYEIKEs6QQmaTzYBEZEjGQEV7qxYAQaczhfBDeQaTEEGH8M0AQelrk0BDCVMK4EOlk8owRGHLTwBBqM8EUEd3CgQwQ/dCUSBAxrEJsEJpcgcATU3NT4BBK5ECgEEzpcJwQXloBIBD2UOIkELfJM4AQmKyFcBDI8QV8EDlU9ZAQ2GKl6BBhlWxJAFXdCyBwANWFxldQwbJCgpJiMjIiMADVZZZXYPICgsLCgkIiIjAAxcX2Z2DBghJSYlIyIiAA1WWWZ0FCMqLS0nIyMiJAAMYWNpdQkTHCEjIiAgHwANVltmAholKi0sJiMiIiUADGhpb3cHEBkdICAdHBwADFZcag0hKCssKSUhISEADGlscXcHDxYbHR0bGxoADFRYYBkkKiopJSIdHB0ADGtucncGDhUaHBsaGhsADVRXTCsoKigmIyAcGh0pAAxsb3MBCA8WGhsbGhscAAxUVU42KCYlIyEdGhccAAtwcnUCCRAWGhsaGhsADFdWUz0kIiIhIBwaFx0BC3V3BAkRFhkbGxscAAtXV1dfGhobGhoWEgwBCnYBBAkPFRobGxsADGxgXm4KERISEA0LCgsDCQQIDxUZHBwBC3FkbwULDQwLCAYE"
    }
  ],
  "peticion": "seleccion_usuarios"
}

Это мои занятия:

class JsonParser
    {
        public int estado { set; get; }
        public string peticion { set; get; }
        public user usuarios { set; get; }

        public  class user
        {
            public string id_usuario { set; get; }
            public string huella_string { set; get; }
            public string nombre { set; get; }
        }

    }

И вот как я называю одно из значений массива

var Json = JsonConvert.DeserializeObject<JsonParser>(strJSON);
ShowHintInfo(Json.usuarios.id_usuario);

Спасибо

2 ответа

Решение

usuarios это массив. использование user[]

class JsonParser
{
    public int estado { set; get; }
    public string peticion { set; get; }
    public user[] usuarios { set; get; }

    public  class user
    {
        public string id_usuario { set; get; }
        public string huella_string { set; get; }
        public string nombre { set; get; }
    }

}

Очень просто. смотреть на

      "nombre": "asas,

Вы забыли заключительную цитату. Используйте JSON Validator, чтобы убедиться, что ваш JSON действителен, прежде чем проверять что-либо еще в будущем.

Другие вопросы по тегам