Я пытаюсь позвонить в Rest API из серверного приложения Blazor, используя следующий вызов, чтобы получить список проектов. API возвращает правильный результат, но не может сопоставиться с объектом проекта, поскольку JSON для проектов вложен в свойство результатов.
Это звонок, который я делаю
var projects = await httpClient.GetJsonAsync<Project[]>("projects");
А вот так выглядит ответ от вызова API.
{
"message": "GET Request successful.",
"isError": false,
"result": [
{
"projectCode": "PRJ-1996",
"businessAssociateID": "BA000000000002",
"contractStartDate": "11/19/2020 8:37:17 AM",
"contractEndDate": "11/19/2020 8:37:17 AM",
"contractStatus": "Active",
"createdBy": "system",
"createdDate": "2020-11-19T08:37:17.37",
"active": true
},
{
"projectCode": "PRJ-1997",
"businessAssociateID": "BA000000000002",
"contractStartDate": "11/19/2020 8:37:17 AM",
"contractEndDate": "11/19/2020 8:37:17 AM",
"contractStatus": "Active",
"createdBy": "system",
"createdDate": "2020-11-19T08:37:17.37",
"active": true
},
{
"projectCode": "PRJ-1998",
"businessAssociateID": "BA000000000002",
"contractStartDate": "11/19/2020 8:37:17 AM",
"contractEndDate": "11/19/2020 8:37:17 AM",
"contractStatus": "Active",
"createdBy": "system",
"createdDate": "2020-11-19T08:37:17.37",
"active": true
},
{
]
}
Как я могу использовать функцию GetJsonAsync для сопоставления со списком проектов. Все примеры, которые я видел, возвращают только массив объектов без ответных сообщений.
Это ошибка, которую я получаю при вызове. Маршруты соответствуют вызову API, и это уже было протестировано.
JsonException: The JSON value could not be converted to Web.Data.Project[]. Path: $ | LineNumber: 0 | BytePositionInLine: 1.