2014-05-23 25 views
0

我有以下json數據被返回給我,我需要檢查用戶是否授予'public_actions'權限。從包含字符串鍵/值的json數據檢索布爾值

{"data":[{"permission":"installed","status":"granted"},{"permission":"public_profile","status":"granted"},{"permission":"email","status":"granted"},{"permission":"publish_actions","status":"granted"}]} 

已經沒有真正做到以JSON數據任何事情之前,我不知道推薦的方法基本上在一個真或假的(即特定的權限是否已授予與否)到達。

+0

使用[json.net](https://json.codeplex.com/)你可以解析json數據。 – Hassan

回答

1

Json.NET是一種流行的.NET高性能JSON框架。

這我如何讀取使用Newtonsoft.Json.dll JSON字符串:

var json = @"{ 
       data: [ 
         { 
          permission: 'installed', 
          status: 'granted'  
         }, 
         { 
          permission: 'public_profile', 
          status: 'granted'  
         }, 
         { 
          permission: 'email', 
          status: 'granted'  
         }, 
         { 
          permission: 'publish_actions', 
          status: 'granted'  
         } 
        ] 
      }"; 

JObject jObjects = JObject.Parse(json); 

foreach (KeyValuePair<String, JToken> kvpParent in jObjects) 
{ 
    var sMainKey = kvpParent.Key; 
    var objects = JArray.Parse(kvpParent.Value.ToString()); 

    foreach (JObject jObj in objects) 
    { 
      foreach (KeyValuePair<String, JToken> kvp in jObj) 
      { 
       var sKey = kvp.Key; //permission 
       var sValue = (String)kvp.Value; //installed      
      } 
    } 
} 

每個KeyValuePair得到2計數是permissionstatus鍵。

相關問題