2015-05-11 23 views
-7

這是一個名爲responseString的字符串,我從服務器獲得。 如果我使用Console.Write(responseString)我得到以下輸出需要使用Json.NET解析這些數據

{ 
    "success": true, 
    "info": "Logged in :) ", 
    "data": { 
     "authentication_token": "iexGFwJ6HwERQZ3wJ4NG" 
    } 
} 

的問題是,我需要鑰匙「authentication_token」的價值。 我該如何做到這一點?

+2

太好了。這樣做。如果您遇到問題,並且您有任何問題,請隨時發佈您的最佳嘗試和描述您需要幫助的內容。 – nvoigt

+1

創建你的POCO對象來反序列化json,調用'var myPoco = JsonConver.DeserializeObject (json_string_here);'。 'myPoco.authentication_token'希望擁有你的令牌。 –

回答

1

我解決它像這樣:

var json = JObject.Parse(responseString); 
Console.WriteLine(json["data"]["authentication_token"]); 
1

我認爲,更好的辦法是創建兩個類新:

public class Data 
{ 
    public string authentication_token { get; set; } 
} 

public class RootObject 
{ 
    public bool success { get; set; } 
    public string info { get; set; } 
    public Data data { get; set; } 
} 

現在你將有機會獲得認證令牌變量:authentication_token數據等級:

RootObject myObject = JsonConvert.DeserializeObject<RootObject>(*yourJSON*); 
string token = myObject.data.authentication_token;