【发布时间】:2015-04-02 00:38:13
【问题描述】:
我有一个访问 API 并检索一些 Json 值的函数,这些值被返回并粘贴到富文本框中。我如何能够将此 Json 转换为对象列表?互联网上充斥着我的要求,但在阅读并尝试了所有内容后,我并没有变得更聪明。
这是函数,URL是获取Json的Api链接。
public string GetApi(string url)
{
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
try
{
WebResponse response = request.GetResponse();
using (Stream responseStream = response.GetResponseStream())
{
StreamReader reader = new StreamReader(responseStream, Encoding.UTF8);
return reader.ReadToEnd();
}
}
catch (WebException ex)
{
WebResponse errorResponse = ex.Response;
using (Stream responseStream = errorResponse.GetResponseStream())
{
StreamReader reader = new StreamReader(responseStream, Encoding.GetEncoding("utf-8"));
String errorText = reader.ReadToEnd();
// log errorText
}
throw;
}
}
这是Json结构
{"id":19684,"buys":[{"listings":10,"unit_price":94,"quantity":2498},{"listings":42,"unit_price":93,"quantity":10398},{"listings":139,"unit_price":92,"quantity":34501},{"listings":8,"unit_price":91,"quantity":1939},{"listings":38,"unit_price":90,"quantity":9270},{"listings":7,"unit_price":89,"quantity":1266},{"listings":43,"unit_price":88,"quantity":10565},{"listings":23,"unit_price":87,"quantity":5476},{"listings":80,"unit_price":86,"quantity":19827},
【问题讨论】:
-
获取 JSON 的代码与将 JSON 转换为列表的问题无关。您具体尝试过什么转换?这将与发布更相关......
-
@har07 我一直被指向序列化和其他使用结构。
-
序列化有什么问题?避免序列化的任何具体原因?恕我直言,这是一种通过序列化将 JSON 转换为更友好的 .NET 对象的干净方式
标签: c# json object serialization