C# 如何从API获取值?
我为这篇文章道歉,因为它对一些人来说可能是陈词滥调。但我想了解GetAPI的操作,不幸的是,我还没有找到一个可访问的教程。作为从示例中学习的最佳方法,谁能告诉我如何以最简单的方式从name标记中获取值?最多可以是文本框 在xml中: 在json中: 代码C# 如何从API获取值?,c#,.net,asp.net-web-api,C#,.net,Asp.net Web Api,我为这篇文章道歉,因为它对一些人来说可能是陈词滥调。但我想了解GetAPI的操作,不幸的是,我还没有找到一个可访问的教程。作为从示例中学习的最佳方法,谁能告诉我如何以最简单的方式从name标记中获取值?最多可以是文本框 在xml中: 在json中: 代码 提前感谢您的帮助。为了正确反序列化JSON字符串,您缺少了各种类。试试看: public class Results { public string id { get; set; } public
提前感谢您的帮助。为了正确反序列化JSON字符串,您缺少了各种类。试试看:
public class Results
{
public string id { get; set; }
public string name { get; set; }
public bool hasVariables { get; set; }
public List<string> children { get; set; }
public string levels { get; set; }
}
public class Links
{
public string first { get; set; }
public string self { get; set; }
public string next { get; set; }
public string last { get; set; }
}
public class JsonObject
{
public int totalRecords { get; set; }
public int page { get; set; }
public int pageSize { get; set; }
public Links links { get; set; }
public List<Results> results { get; set; }
}
然后使用类似于:
using (WebClient wc = new WebClient())
{
var json = wc.DownloadString("https://bdl.stat.gov.pl/api/v1/subjects?lang=pl&format=json");
JsonObject result = JsonConvert.DeserializeObject<JsonObject>(json);
foreach (var res in result.results)
{
MessageBox.Show(res.name);
}
}
在web上搜索C parse JSON或C parse XML,并尝试解决此问题。我已在原始帖子中添加了代码,供将来参考。请理解如何询问问题。最好的学习方法是查看使用WebClient或HttpClient`调用Web API的示例,然后查看将JSON字符串从字符串转换为对象表示的反序列化示例。
using (WebClient wc = new WebClient())
{
var json = wc.DownloadString("https://bdl.stat.gov.pl/api/v1/subjects?lang=pl&format=json");
JsonObject result = JsonConvert.DeserializeObject<JsonObject>(json);
foreach (var res in result.results)
{
MessageBox.Show(res.name);
}
}