稳重的佛珠 · JAR will be empty - ...· 1 周前 · |
沉稳的饭卡 · 使用jquery.PrintArea.js打 ...· 4 天前 · |
捣蛋的茶叶 · limit 错误报告: SQL 错误: ...· 6 月前 · |
眉毛粗的炒饭 · TensorFlow搭建LSTM实现多变量多 ...· 9 月前 · |
温柔的玉米 · 【小白学python】入门级教程 - 知乎· 1 年前 · |
重感情的夕阳 · Java中方法重写和方法重载的6个区别? ...· 1 年前 · |
博学的上铺 · 使用 nuget.exe CLI 创建 ...· 1 年前 · |
我正在研究asp.net核心网络应用程序接口,我是asp.net核心的新手。我做了一个web api,想从web应用程序控制器调用它,它工作得很好。我的问题是我想转换c#对象列表中的json。我已经从web api获得了json格式,但可以将其转换为c#对象列表。我在谷歌上搜索了很多次,到处都能找到一个解决方案,那就是
JsonConvert.DeserializeObject<BusinessUnit>(result);
这对我不起作用。我的代码:
client.DefaultRequestHeaders.Accept.Clear();
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
var response = await client.GetAsync(baseAddress + "/api/BusinessUnit");
var result = response.Content.ReadAsStringAsync();
List<BusinessUnit> businessunits = JsonConvert.DeserializeObject<BusinessUnit>(result); //result shows error because it needs string as parameter.
我仍然在努力解决这个问题。如何转换c# object list中的result(json格式)?
提前谢谢。
发布于 2017-03-03 16:38:31
您需要像这样等待任务:
var result = await response.Content.ReadAsStringAsync();
使用
var
的危险,因为现在它将类型推断为
Task<string>
。如果你尝试过:
string result = response.Content.ReadAsStringAsync();
它会立即给你一个错误,它不能将
Task<string>
转换为
string
。
编辑:您遇到的另一个错误是您试图将JSON反序列化为一个对象,而它实际上是一个数组。
List<BusinessUnit> businessunits = JsonConvert.DeserializeObject<List<BusinessUnit>>(result);
发布于 2019-01-04 03:40:52
你可以试试这个:
IEnumerable<BusinessUnit> result = await response.Content.ReadAsAsync<IEnumerable<BusinessUnit>>();
干杯。
发布于 2020-04-23 19:44:13
您可以使用.Result转换为字符串:
string XYZ = response.Content.ReadAsStringAsync().Result;
https://stackoverflow.com/questions/42573964
复制相似问题
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2024 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号: 粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
温柔的玉米 · 【小白学python】入门级教程 - 知乎 1 年前 |