【发布时间】:2022-11-05 00:50:12
【问题描述】:
我想在我的 ASP.NET Core MVC 视图中显示部门列表。
请注意,我有 3 层(数据访问 + API(从数据库获取数据)+ MVC (UI))。
这是我使用 API 调用从数据库中获得的 Json 数据:
[
{
"id": 3,
"name": "Sales"
},
{
"id": 4,
"name": "PMO"
},
{
"id": 5,
"name": "Research And Development"
},
{
"id": 6,
"name": "Product Management"
},
{
"id": 7,
"name": "HR"
},
{
"id": 8,
"name": "Ava"
},
{
"id": 9,
"name": "IT"
}
]
这是我使用 HttpClient 从 API 获取数据的 C# 代码:
public async Task<T> GetRequest<T>(string uri)
{
try
{
var client = _httpClientFactory.CreateClient();
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
using (HttpResponseMessage response = await client.GetAsync(uri))
{
if (response.StatusCode.ToString() == "OK")
{
_logger.LogInformation("Get Request Successed");
//response.EnsureSuccessStatusCode();
responseBody = await response.Content.ReadAsStringAsync();
}
return JsonConvert.DeserializeObject<T>(responseBody);
}
}
catch (Exception ex)
{
_logger.LogError("Failed");
return JsonConvert.DeserializeObject<T>(responseBody);
}
}
当我试图解析来自 json 的数据时,它返回一个错误。
解析值时遇到意外字符:[。路径'',第 1 行,位置 1。
【问题讨论】:
-
你没有显示
T你用什么来调用GetRequest()但我猜它不是一个集合(和你的 JSON是一个集合)。
标签: c# asp.net-mvc api asp.net-core httpclient