我在ASP.NET这一功能的DataTable
以JSON字符串转换:转换的数据表列表,以JSON
Public Function GetJson(ByVal dt As DataTable) As String
Dim serializer As System.Web.Script.Serialization.JavaScriptSerializer = New System.Web.Script.Serialization.JavaScriptSerializer()
Dim rows As New List(Of Dictionary(Of String, Object))
Dim row As Dictionary(Of String, Object)
Try
For Each dr As DataRow In dt.Rows
row = New Dictionary(Of String, Object)
For Each col As DataColumn In dt.Columns
row.Add(col.ColumnName, dr(col))
Next
rows.Add(row)
Next
Return serializer.Serialize(rows)
Catch ex As Exception
logFile("SP GetJson ----" + ex.Message)
Return "-1"
End Try
End Function
的json会是这样的:
{
"category": [
{
"id": "1",
"desc": "default",
},
{
"id": "2",
"desc": "fun",
}
],
"images": [
{
"image ID": "1",
"link": "images/logo.jpg"
"category": "1"
},
{
"image ID": "2",
"link": "images/logo2.jpg"
"category": "2"
}
]
}
,但现在我有一个2 DataTable
的列表,我需要将其转换为一个具有2个数组的JSON字符串,任何想法?
您是否尝试过合并'DataTable's成一个,然后调用从'DataTable'到JSON逻辑的转换修改? –
@KarlAnderson实际上,如果我将2个'datatable'合并到1'datatable'中,我将只有一个数组在json字符串中..但实际上我需要在2个根标签的json字符串中有2个数组.. – User7291
@KarlAnderson换句话说,我有2个数据表,我需要将它们转换为一个json字符串,但我需要在同一个字符串中的json数组中的每个数据表 – User7291