Попытка десериализации JSON, возвращенного из API. Ответ имеет следующий формат:
{
"items":[
{
"candidateId":40419,
"firstName":"Adelaida",
"lastName":"Banks",
}
....
]
}
Я использую HttpClient для вызова API следующим образом:
List<Candidate> model1 = null;
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", "00000");
HttpResponseMessage response = await client.GetAsync(MyURL);
response.EnsureSuccessStatusCode();
var responseBody = await response.Content.ReadAsStringAsync();
model1 = JsonConvert.DeserializeObject<List<Candidate>>(responseBody);
И кандидат в класс определяется следующим образом:
public class Candidate
{
public string candidateId { get; set; }
public string firstName { get; set; }
public string lastName { get; set; }
public string email { get; set; }
public int phone { get; set; }
public int mobile { get; set; }
}
Но я получаю исключение:
Невозможно десериализовать текущий объект JSON (например, {"name": "value"}) в тип 'System.Collections.Generic.List`1 [AirCall.Controllers.Candidate]', поскольку для типа требуется массив JSON (например, [1,2,3]) для правильной десериализации.
Интересно, потому что список элементов в ответе находится внутри элемента "Items"? Есть идеи?