ASP.NET将DataTable解析成JSON
好久没有写文章了,好想这个园子呀。今天来为大家介绍Datatable解析成json,过程不算太复杂,将这篇文章带给需要的人。
这里解析json使用的是Newtonsoft.Json.dll程序集。下面请看code:
View Code
1 using System;
2 using System.Collections.Generic;
3 using System.Linq;
4 using System.Web;
5 using System.Data;
6 using Newtonsoft.Json;
7
8 /// <summary>
9 ///DataTable解析JSON
10 /// </summary>
11 public class ConvertDataTable : JsonConverter
12 {
13 public ConvertDataTable()
14 {
15 //
16 //TODO: 在此处添加构造函数逻辑
17 //
18 }
19 public override bool CanConvert(Type objectType)
20 {
21 return typeof(DataTable).IsAssignableFrom(objectType);
22 }
23
24 public override object ReadJson(JsonReader reader, Type objectType)
25 {
26 throw new NotImplementedException();
27 }
28
29 public override void WriteJson(JsonWriter writer, object value)
30 {
31 DataTable dt = (DataTable)value;
32 writer.WriteStartArray();
33 foreach (DataRow dr in dt.Rows)
34 {
35 writer.WriteStartObject();
36 foreach (DataColumn dc in dt.Columns)
37 {
38 writer.WritePropertyName(dc.ColumnName);
39 writer.WriteValue(dr[dc].ToString());
40 }
41 writer.WriteEndObject();
42 }
43 writer.WriteEndArray();
44 }
45 }
使用上面这个类,然后再调用下面这个方法,就可以将datatable转换成json了。
JavaScriptConvert.SerializeObject(dt, new ConvertDataTable())
如果有需要这个程序集的,可以给我留言,也可以从网上down一个。谢谢!
作者 田念收
补充:Web开发 , ASP.Net ,