Как преобразовать набор данных с несколькими таблицами в json
мне нужно преобразовать набор данных с несколькими таблицами в формат json.
Following is the example,
i have a Dataset-X with multiple n number of tables with different data.i need to convert it into json format like:- { "details": [ { "name": "John", "age": "45", "gender": "M" }, { "name": "Sebastian", "age": "34", "gender": "M" }, { "name": "Marc", "age": "23", "gender": "M" }, { "name": "Natalia", "age": "34", "gender": "F" } ], "Salary": [ { "name": "John", "sal": "45000" }, { "name": "Sebastian", "sal": "34000" } ] }
количество столов не фиксируется. как я могу это сделать? пожалуйста, предложите мне.
Что я уже пробовал:
public string ListToString(DataSet ds) { int tbl_count = ds.Tables.Count-1; int i = 0; List<Dictionary<string, object>> rows = new List<Dictionary<string, object>>(); if (ds != null && ds.Tables.Count > 0) { Dictionary<string, object> row1; while (tbl_count >= i) { foreach (DataRow dr in ds.Tables[i].Rows) { row1 = new Dictionary<string, object>(); foreach (DataColumn col in ds.Tables[i].Columns) { row1.Add(col.ColumnName, dr[col]); } rows.Add(row1); } i = i + 1; } } string json = JsonConvert.SerializeObject(rows, Formatting.Indented); return json; }
но показать результат :-
{ { "name": "John", "age": "45", "gender": "M" }, { "name": "Sebastian", "age": "34", "gender": "M" }, { "name": "Marc", "age": "23", "gender": "M" }, { "name": "Natalia", "age": "34", "gender": "F" } }, { { "name": "John", "sal": "45000" }, { "name": "Sebastian", "sal": "34000" } }