2016-05-09 6 views
0

Die Logik wird bei dem Button Click-Ereignis geschrieben, das ein Array von Objekten abruft. In der ForEach-Schleife konvertiere ich jedes Objekt in JSON, aber ich kann es nicht zu einem endgültigen Json-Objekt zusammenfügen. Ich erhalte den Fehler 'string.Concat (params string [])' kann nicht mit einer Instanzreferenz zugegriffen werden; qualifiziere es stattdessen mit einem Typnamen.JSON Objects verschmelzen Problem von einem Object Array

protected void Button2_Click(object sender, EventArgs e) 
{ 

String json = ""; 

String jsonoutput = ""; 

foreach (SAFWebReference.Usagr value in response.PRoles) 

     { 

      json = new JavaScriptSerializer().Serialize(value); 
      jsonoutput = jsonoutput.Concat(json); 

     } 
} 
+1

Sie können nicht json Strings verketten eine gültige Json zu bilden ... Serialisieren * response.PRoles * .... '{a: 1}' ist eine gültige Json aber '{a: 1} {a : 2} 'nicht ... – Eser

+0

verwenden Sie jsonoutput = jsonoutput + json; wenn es nur rein für Merge ist und nicht ein gültiger JSON am Ende – techspider

+0

... und 'Concat' ist eine' statische' Methode, so dass Sie es nicht für eine Instanz verwenden können, wie Sie es tun. – venerik

Antwort

0

Sie müßten das vollständige Liste Objekt anstelle der Serialisierung ein Elements zu zu einem Zeitpunkt, zu serialisieren und zu versuchen, Strings manuell zu verschmelzen.

var json = new JavaScriptSerializer().Serialize(response.PRoles);