我正在使用 Web Api,控制器中包含以下数据。
public IEnumerable<string> Get()
{
return new string[] { "Item1", "Item2s", "Item3", "Item4", "Item5" };
}
我想从应用程序中的 Web Api 获取此数据。我使用此代码从另一个控制器获取数据:
public IEnumerable<Items> GetItems()
{
return repository.GetItems();
}
上面显示了控制器代码,它获取 Web api 中指定的项目列表。 如何更改以下代码以从 string[] 获取数据?
HttpClient client = new HttpClient();
HttpResponseMessage response = await client.GetAsync("http://localhost:1234/api/items");
var items = new List<Items>();
if (response.IsSuccessStatusCode)
{
var content = await response.Content.ReadAsStringAsync();
// Parse 1 Product from the content
var ItemsSet= JsonConvert.DeserializeObject<dynamic>(content);
// Data from Api
var ItemData = new Items
(
(string)ItemsSet[0],
(string)ItemsSet[1],
(string)ItemsSet[2],
(string)ItemsSet[3],
(string)ItemsSet[4]
);
items.Add(ItemData);
}
这个怎么样:
HttpClient client = new HttpClient();
HttpResponseMessage response = await client.GetAsync("http://localhost:1234/api/items");
var Items = new List<Items>();
if (response.IsSuccessStatusCode)
{
IEnumerable<string> categories = await response.Content.ReadAsAsync<IEnumerable<string>>();
var ItemData = new Items
(
// Use this category list to initialize your Items
);
items.Add(ItemData);
}