如何在C#asp.net中将多维数组转换为json格式?

时间:2013-06-04 05:26:42

标签: c# asp.net json

我创建了一个多维数组..它存储了数据库表中的多行..

 SqlDataAdapter da = new SqlDataAdapter("select  * from question_bank_details  where question_num  in (select top 2 question_num  from question_bank_details order by newid())", con5);
 DataTable data_table = new DataTable();
 DataList data_list = new DataList();
 da.Fill(data_table);

 string[,] array_questions = new string[dt.Rows.Count,dt.Columns.Count];

 for (int i = 0; i <dt.Rows.Count; i++)
 {
      for (int j = 0; j < dt.Columns.Count; j++)
      {
           array_questions[i, j] = dt.Rows[i][j].ToString();

      }
 }
 data_list.DataSource = data_table;
 data_list.DataBind();

现在我需要将这个多维数组转换为JSON格式。请帮助

4 个答案:

答案 0 :(得分:3)

您可以使用Json.NET 4.0,也可以在Nuget中使用

string output = JsonConvert.SerializeObject(array_questions);

答案 1 :(得分:0)

这个例子基本上是将javascript转换为json ....希望你可以从中得到一些想法 你需要在http://www.json.org/

使用开源json解析器和stringfier检查

https://github.com/douglascrockford/JSON-js/blob/master/json2.js 之后,您必须包含代码并在数组上使用JSON.stringify()方法。

答案 2 :(得分:0)

使用此

JavaScriptSerializer js = new JavaScriptSerializer();
string json = js.Serialize(array_questions);

来源:How do I convert a c# two-dimensional array to a JSON object?

答案 3 :(得分:0)

var serializer = new JavaScriptSerializer();
serializer.Serialize(array_questions); // This will serialize array to JSON string.

如果要从JScript反序列化,请使用

JSON.Parse(array_questions);

请参阅此内容以了解JScript deserilazation How to return a HashTable from a WebService?