从 Web API 反序列化 JSON
Deserialize JSON from Web API
我有一个维基百科 api 和 json format.I 想制作一个动态编码,其中 ID 号会及时出现。从 api 我想获取提取信息以显示网页的简短描述。我从 jsonTocSharp 稍微修改了我的 json 数据。但是在 url parisng 之后我没有得到任何输出。这是我的代码示例。
namespace Json_deserialize
{
public class pageval
{
public int pageid { get; set; }
public int ns { get; set; }
public string title { get; set; }
public string extract { get; set; }
}
public class Query
{
public Dictionary<string, pageval> pages { get; set; }
}
public class Limits
{
public int extracts { get; set; }
}
public class RootObject
{
public string batchcomplete { get; set; }
public Query query { get; set; }
public Limits limits { get; set; }
}
class Short_text
{
public static RichTextBox txt1 = new RichTextBox();
public static void shortText()
{
using (WebClient wc = new WebClient())
{
var client = new WebClient();
var response = client.DownloadString("https://en.wikipedia.org/w/api.php?format=json&action=query&prop=extracts&exlimit=max&explaintext&exintro&titles=Neuschwanstein%20Castle&redirects="); ;
pageval m = JsonConvert.DeserializeObject<pageval>(response);
string result = m.extract;
txt1.Text = result;
}
}
}
而不是
pageval m = JsonConvert.DeserializeObject<pageval>(response);
使用
RootObject m = JsonConvert.DeserializeObject<RootObject>(response);
我有一个维基百科 api 和 json format.I 想制作一个动态编码,其中 ID 号会及时出现。从 api 我想获取提取信息以显示网页的简短描述。我从 jsonTocSharp 稍微修改了我的 json 数据。但是在 url parisng 之后我没有得到任何输出。这是我的代码示例。
namespace Json_deserialize
{
public class pageval
{
public int pageid { get; set; }
public int ns { get; set; }
public string title { get; set; }
public string extract { get; set; }
}
public class Query
{
public Dictionary<string, pageval> pages { get; set; }
}
public class Limits
{
public int extracts { get; set; }
}
public class RootObject
{
public string batchcomplete { get; set; }
public Query query { get; set; }
public Limits limits { get; set; }
}
class Short_text
{
public static RichTextBox txt1 = new RichTextBox();
public static void shortText()
{
using (WebClient wc = new WebClient())
{
var client = new WebClient();
var response = client.DownloadString("https://en.wikipedia.org/w/api.php?format=json&action=query&prop=extracts&exlimit=max&explaintext&exintro&titles=Neuschwanstein%20Castle&redirects="); ;
pageval m = JsonConvert.DeserializeObject<pageval>(response);
string result = m.extract;
txt1.Text = result;
}
}
}
而不是
pageval m = JsonConvert.DeserializeObject<pageval>(response);
使用
RootObject m = JsonConvert.DeserializeObject<RootObject>(response);