2016-08-13 79 views
-1

我從datagridview讀取數據。對於每一行我創建新的JSONObject。我需要把每個JSON對象放在JSONarray中。這裏是代碼:c#json使用newtonsoft

PodaciAnaliza podaciAnaliza = new PodaciAnaliza(); 
string[] test = new string[100]; 
podaciAnaliza.Sesija = DateTime.Now.ToString("MM/dd/yyyy h:mm tt"); 


int counter = 1; 
foreach (DataGridViewRow row in glProstor.Rows) 
{ 
    if (counter != glProstor.Rows.Count) 
    { 
     //add if not null 
     podaciAnaliza.Spin = row.Cells["brojSpina"].Value.ToString(); 
     podaciAnaliza.EditK1 = row.Cells["editKontra1"].Value.ToString(); 
     podaciAnaliza.EditI1 = row.Cells["editIsta1"].Value.ToString(); 
     podaciAnaliza.EditK2 = row.Cells["editKontra2"].Value.ToString();     
     podaciAnaliza.EditI2 = row.Cells["editIsta2"].Value.ToString(); 

     test[counter] = JsonConvert.SerializeObject(podaciAnaliza); 
     counter++; 
    } 

}//end of foreach 
+0

問題是什麼,查看後有什麼不得不嘗試? –

+0

我不能找到方法來添加每個JSON數組在一個JSON數組... –

回答

0

維護一個對象列表(你試圖序列化)。循環時,將每個元素添加到對象列表中。最後,只需將列表轉換爲json數組。

var objList = new List<PodaciAnaliza>(); 


int counter = 1; 
foreach (DataGridViewRow row in glProstor.Rows) 
{ 
    if (counter != glProstor.Rows.Count) 
    { 
     var podaciAnaliza = new PodaciAnaliza(); 
     podaciAnaliza.Sesija = DateTime.Now.ToString("MM/dd/yyyy h:mm tt"); 

     //add if not null 
     podaciAnaliza.Spin = row.Cells["brojSpina"].Value.ToString(); 
     podaciAnaliza.EditK1 = row.Cells["editKontra1"].Value.ToString(); 
     podaciAnaliza.EditI1 = row.Cells["editIsta1"].Value.ToString(); 
     podaciAnaliza.EditK2 = row.Cells["editKontra2"].Value.ToString();     
     podaciAnaliza.EditI2 = row.Cells["editIsta2"].Value.ToString(); 

     objList.Add(podaciAnaliza); 
     counter++; 
    } 

}//end of foreach 

//Seralized list: 
var list = JsonConvert.SeralizeObject(objList); 
+0

謝謝,它的工作原理... –