[英]Deserialize nested json objects using Json.Net returns null
我從正在調用的API獲取以下嵌套的Json對象。
{"status":"success","data":{"valid_for":3600,"token":"access_token","expires":1123123123123}}
PostResponse類如下所示
public class PostResponse
{
public string status { get; set; }
public Data data { get; set; }
}
public class Data
{
public int valid_for { get; set; }
public string token { get; set; }
public int expires { get; set; }
}
我用此代碼獲得的postResponse為空。
using (StreamReader reader = new StreamReader(resp.GetResponseStream()))
{
Console.WriteLine(reader.ReadToEnd());
postResponse = JsonConvert.DeserializeObject<PostResponse>(reader.ReadToEnd());
}
您需要重置流指針位置,因為在使用WriteLine
方法時您已經從流中讀取了。
Stream stream = resp.GetResponseStream();
using (StreamReader reader = new StreamReader(stream))
{
Console.WriteLine(reader.ReadToEnd());
stream.Position = 0; //Reset position pointer
reader.DiscardBufferedData();
postResponse = JsonConvert.DeserializeObject<PostResponse>(reader.ReadToEnd());
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.