在Asp.Net中将Datatable转换为Json对象
我是来自印度尼西亚的Joines。我想询问如何将我的datatable转换为json对象。我正在使用asp.net和Vb。如何将datatable转换为Json,如下所示:在Asp.Net中将Datatable转换为Json对象,asp.net,json,vb.net,Asp.net,Json,Vb.net,我是来自印度尼西亚的Joines。我想询问如何将我的datatable转换为json对象。我正在使用asp.net和Vb。如何将datatable转换为Json,如下所示: { "awb": "81903054216", "detail": { "shipped_date": "23-06-2016 08:24:00", "delivered_date": "24-06-2016 10:54:00", "services_code": "reguler", "actual_amount"
{
"awb": "81903054216",
"detail":
{
"shipped_date": "23-06-2016 08:24:00",
"delivered_date": "24-06-2016 10:54:00",
"services_code": "reguler",
"actual_amount": 33150,
"weight": 1000,
"final_status": 200,
"sender": {
"name": "ABCD",
"addr": "JL. ABCD",
"zipcode": 12345,
"city": "XXXX",
"geoloc": "xxx.bbb, xxx.aaa"
},
"receiver":{
"name": "BCDA",
"addr": "JL. BCDA",
"zipcode": 12345,
"city": "XXXX",
"geoloc": "xxx.bbb, xxx.aaa"
},
"driver":{
"id": "940184928",
"name": "driver A",
"phone": "12303523941",
"photo": ".com/potonya.jpg"
}
},
"history": [
{
"date_time": "20-JUN-2016 12:54:00",
"city_name": "XXXX",
"status": "manifested",
"status_code": 101,
"note": "something something",
"receiver": ""
},
{
"date_time": "21-JUN-2016 10:54:00",
"city_name": "XXXX",
"status": "Pickup Failed",
"status_code": 151,
"note": "something 1",
"receiver": ""
},
{
"date_time": "23-JUN-2016 12:54:00",
"city_name": "XXXX",
"status": "Shipping",
"status_code": 100,
"note": "something 2",
"receiver": ""
},
{
"date_time": "24-JUN-2016 10:54:00",
"city_name": "YYYY",
"status": "Delivered",
"status_code": 200,
"note": "something 3",
"receiver": "SETYAWAN"
}
]
}
提前感谢您的回复:对于VB
Public Function ConvertDataTabletoString() As String
Dim dt As New DataTable()
Using con As New SqlConnection("Data Source=SureshDasari;Initial Catalog=master;Integrated Security=true")
Using cmd As New SqlCommand("select title=City,lat=latitude,lng=longitude,description from LocationDetails", con)
con.Open()
Dim da As New SqlDataAdapter(cmd)
da.Fill(dt)
Dim serializer As New System.Web.Script.Serialization.JavaScriptSerializer()
Dim rows As New List(Of Dictionary(Of String, Object))()
Dim row As Dictionary(Of String, Object)
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)
End Using
End Using
End Function
对于C
对于VB
对于C
通过这样做,您可以将数据表转换为JSON格式
Public Function GetJson(ByVal dt As DataTable) As String
Return New JavaScriptSerializer().Serialize(From dr As DataRow In dt.Rows Select dt.Columns.Cast(Of DataColumn)().ToDictionary(Function(col) col.ColumnName, Function(col) dr(col)))
End Function
通过这样做,您可以将数据表转换为JSON格式
Public Function GetJson(ByVal dt As DataTable) As String
Return New JavaScriptSerializer().Serialize(From dr As DataRow In dt.Rows Select dt.Columns.Cast(Of DataColumn)().ToDictionary(Function(col) col.ColumnName, Function(col) dr(col)))
End Function
这么简单
首先添加nuget包Newtonsoft.json
而不是像这样把它包括在你的项目中
using Newtonsoft.Json
像这样将datatable转换为json
return JsonConvert.SerializeObject(dt, Newtonsoft.Json.Formatting.Indented);
这么简单
首先添加nuget包Newtonsoft.json
而不是像这样把它包括在你的项目中
using Newtonsoft.Json
像这样将datatable转换为json
return JsonConvert.SerializeObject(dt, Newtonsoft.Json.Formatting.Indented);
来自的此代码段的可能重复可能会对您有所帮助。来自的此代码段的可能重复可能会对您有所帮助。OP需要VB.net中的解决方案:尽管使用C.net将datatable转换为JSON是正确的方法。Nice.OP需要VB.net中的解决方案:尽管使用C.net将datatable转换为JSON是正确的方法。美好的