簡體   English   中英

從動態json結果獲取列表

[英]Get a list from a dynamic json result

使用

dynamic result = JsonConvert.DeserializeObject(jsonResult);

我得到以下傑森

{
 facet_counts: {
  facet_queries: { },
   facet_fields: {
     Suggest: [
      "AAA",
      0,
      "BBB",
      0,
      "CCC",
      0,
      "DDD",
      0,
      "EEE",
      0]
},

我想迭代“建議”以獲取賠率位置(1、3、5 ..)中的值的列表。
即“ AAA”,“ BBB”,“ CCC”,“ DDD”

我可以使用基本的

dynamic resultList = result.facet_counts.facet_fields.Suggest.Children();
foreach (dynamic child in resultList)
{
   strings.Add(child.ToString());
}

但是由於所有動態字段都是JVAlue,並且我必須使用索引並添加條件,所以我想知道是否有更優雅的方法(也許是linq?)。
謝謝。

使用來自Linque的以下內容。

resultList.Where((child, index) => (index) %2!=0); 

希望對您有幫助。

反序列化JSON的一種方法是使用Newtonsoft (而不是循環)

List<string> myList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<string>>(resultList);

然后我的簡單linq,您可以過濾數據。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM