2016-06-28 10 views
2

Ich habe ein zurückgekehrter JSON-Objekt, die einen leeren JSON-ArrayC# JSON-Objekt mit leeren json Array

{[]} 

EDIT enthält:

Wie kann ich das in einem Check if-Anweisung? Hier

 string arrayData = string.Empty; 

     if (response.Contains("\"data\":")) 
     { 
      JToken root = JObject.Parse(response); 
      JToken data = root["data"]; 
      if (data != null) 
      { 
       arrayData = data.ToString(); 
      } 
     } 
     else 
     { 
      arrayData = response; 
     } 

     var responseDatas = JsonConvert.DeserializeObject<dynamic>(arrayData); 

ist responseDatas jetzt

{[]} 
+0

Ich glaube nicht, dass es ein gültiger JSON-String . –

+0

Ich bin mir sicher es ist nicht;) @DannyChen –

Antwort

2

Erstens, dass ungültige JSON ist. Das Array sollte einen Namen hat, wie folgt aus:

{ list: [] } 

Zweitens können Sie die JSON mit JSON.NET deserialisieren und testen Sie dann das Ergebnis:

public class ClassWithList 
{ 
    public List<object> list { get; set; } 
} 

var o = JsonConvert.DeserializeObject<ClassWithList>(json); 

if (o.list != null && o.list.Count > 0) 
{ } 
+0

danke! Genau was ich brauchte, ist o.list.Count die Lösung. Ich liebe stackoverflow ... :) – user3663854