У меня есть следующий API-код для получения одного результата ответа, но я получаю ошибку json. net с жалобами, когда я удаляю эту строку var Product = prdList .FirstOrDefault(a => a.ID == productID);
и return Json(prdList);
, она работает нормально, но возвращает каждую строку в таблице. Как я могу получить одну запись?
Вот код
[HttpGet("{productID}")]
public async Task<IActionResult> Getproduct(int productID)
{
var prdList = (await rpsService.Getrps(productID)).ToList();
var Product = prdList .FirstOrDefault(a => a.ID == productID);
return Json(Product);
}
Вот ошибка, которую я получаю, я получаю нужную информацию, но я получаю ошибку при загрузке страницы
JsonSerializationException: Невозможно десериализовать текущий объект JSON (например, {"name": "value"}) в тип 'System.Collections.Generi c .IList`1 Имя проекта', так как тип для правильной десериализации требуется массив JSON (например, [1,2,3]). Чтобы исправить эту ошибку, либо измените массив JSON на JSON (например, [1,2,3]), либо измените десериализованный тип так, чтобы он был нормальным. NET тип (например, не примитивный тип, например, целое число а не тип коллекции, такой как массив или список), который можно десериализовать из объекта JSON. JsonObjectAttribute также можно добавить к типу, чтобы принудительно десериализовать его из объекта JSON. Путь 'productID', строка 1, позиция 13.
Я пытался работать нормально, но отображать все строки
[HttpGet("{productID}")]
public async Task<IActionResult> GetProduct(int productID)
{
var prdList = (await rpsService.Getrps(productID)).ToList();
return Json(prdList );
}