![](/img/trans.png)
[英]Using Newtonsoft.Json. How to do JObject.SelectToken when token name is “['token_name']”?
[英]JObject.SelectToken as JObject Newtonsoft.JSON C#
我想查詢JObject
並再次以遞歸方式查詢結果。
因此, JObject.SelectToken
是結果屬性。 因此,再次查詢屬性不會獲得價值,因為它不是JObject
。
因此,請任何人向我提出一種實現此目標的方法。
樣例代碼:
JObject Jobj = JObject.parse(@"{
""patient_demog_information"": {
""patient_id"": ""2558765"",
""patient_name"": {
""given_name"": ""29 th june 2018"",
""family_name"": ""0016"",
""middle_name"": """",
""suffix_name"": """",
""prefix_name"": """",
""degree_name"": """"
}
}
}");
因此,不是直接按步驟操作,而是在Patient_name中獲得了middle_name值
JToken pat_demog = Jobj.SelectToken("$.patient_demog_information");
JToken pat_name = pat_demog.SelectToken("$.patient_name");
所以在這里,我得到pat_demog
,並通過查詢它沒有得到pat_name
因為它是一個Property而不是JObject
。
我不確定您的意思是什么,但是您可以繼續使用SelectToken
在樹上繼續鑽取,例如:
JObject Jobj = JObject.Parse(@"{
""patient_demog_information"": {
""patient_id"": ""2558765"",
""patient_name"": {
""given_name"": ""29 th june 2018"",
""family_name"": ""0016"",
""middle_name"": """",
""suffix_name"": """",
""prefix_name"": """",
""degree_name"": """"
}
}
}");
JToken pat_demog = Jobj.SelectToken("$.patient_demog_information");
JToken pat_name = pat_demog.SelectToken("$.patient_name");
JValue family_name = (JValue)pat_name.SelectToken("$.family_name");
Console.WriteLine(family_name.Value);
上面的轉換為JValue
但是我們可以直接轉換為字符串
string value = (string)pat_name.SelectToken("$.family_name");
Console.WriteLine(value);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.