gpt4 book ai didi

c# - WebApi 响应反序列化为 List

转载 作者:太空宇宙 更新时间:2023-11-03 15:28:14 25 4
gpt4 key购买 nike

以下工作正常并使用了很长一段时间。

Uri requestUri = new Uri("http://somewebsite.com/api/Images");
var client = new HttpClient();
var response = await client.GetAsync(requestUri);
StorageFolder folder = ApplicationData.Current.LocalFolder;

if (response.IsSuccessStatusCode)
{
string responseBody = await response.Content.ReadAsStringAsync();
List<string> myList = await Task.Factory.StartNew(() => JsonConvert.DeserializeObject<List<string>>(responseBody));

// more logic here
}

代码 await Task.Factory.StartNew(() => JsonConvert.DeserializeObject<List<string>>(responseBody)); 看起来可读性较差,想知道是否有简化的等价物。

你能建议一个更好的替代方法来获得 List<string>来自来自 Web Api 的 HTTP 响应内容?

最佳答案

如果您不关心异步操作,我认为您可以这样做:

var responseBody = client.GetAsync(url).Result
.Content.ReadAsStringAsync().Result;

var myList = JsonConvert.DeserializeObject<List<string>>(responseBody);

编辑:抱歉,这忽略了您的回复状态检查。我认为这会起作用:

if (response.IsSuccessStatusCode)
{
var responseBody = response.Content.ReadAsStringAsync().Result;
var myList = JsonConvert.DeserializeObject<List<string>>(responseBody);
// ...

关于c# - WebApi 响应反序列化为 List<string>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34494435/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com