我正在尝试解析whois json响应,但是当我尝试解析它时,我得到空值。
string html;
string whoisUrl = "https://whois.apitruck.com/:google.com";
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(whoisUrl);
using (HttpWebResponse response = (HttpWebResponse)request.GetResponse())
{
using (StreamReader reader = new StreamReader(response.GetResponseStream(), Encoding.ASCII))
{
html = reader.ReadToEnd();
}
}
Class1 m = JsonConvert.DeserializeObject<Class1>(html);
MessageBox.Show(m.created);
对象
class Class1
{
public string created { get; set; }
}
任何人都可以在这里指出我做错了什么吗?
答案 0 :(得分:6)
您的long
无法获得自&#34;创建后的价值&#34;是&#34;响应的一部分&#34;而不是JSON响应的根级别。
您需要使用Class1
或为类创建层次结构以进行简单修复。
dynamic
然后你可以使用它:
class Class1
{
public Response Response { get; set; }
}
class Response
{
public string created { get; set; }
}
<强>更新强>
此外,以下是如何使用Class1 m = JsonConvert.DeserializeObject<Class1>(html);
MessageBox.Show(m.Response.created);
:
dynamic
答案 1 :(得分:3)
将json转换为.net类有很好的app:
HTTP/1.1 200 OK
Content-Type: application/octet-stream
Content-Length: 101
Access-Control-Allow-Credentials: true
Access-Control-Allow-Origin: null
Set-Cookie: io=3Z_TCqv9LKKXcWCjAAAD
Date: Fri, 25 Sep 2015 02:55:51 GMT
Connection: keep-alive
....0{"sid":"3Z_TCqv9LKKXcWCjAAAD","upgrades": ["websocket"],"pingInterval":25000,"pingTimeout":60000}