Json数据转成 C# asp.net数据(对象)和逆转换
1.需要引用的命名空间
using System.Web.Script.Serialization;
using System.Runtime.Serialization;
using System.Runtime.Serialization.Json;
using System.IO;
using System.Text;
2.Json数据转成 C# asp.NET数据(对象)方法如下
- MemoryStream stream = new MemoryStream();
- DataContractJsonSerializer ser = new DataContractJsonSerializer(typeof(List<yourType>));////youType是与Json格式对应的C#类
- StreamWriter wr = new StreamWriter(stream);
- wr.Write(tabJson); //tabJson是你需要转化的Json字符串
- wr.Flush();
- stream.Position = 0;
- Object obj = ser.ReadObject(stream);
- List<yourType> list = (List<yourType>)obj; //list即为转化成的c#对象集合,通过索引如list[0],list[1]等访问。
- int length = list.Count();//length为list对象集合的对象个数
3.如上方法的json字符串必须为如下格式,就是数组
- [
- {
- "ID": "1",
- "fieldName": "MANDT",
- "fieldDisc": "客户端",
- "fieldType": "String",
- "mainGuid": "7cc70e2e-dea7-495b-85ac-639a202b4c86",
- "subGuid": "b95a98f5-7b7d-4060-96c7-3088cbab1fe4"
- },
- {
- "ID": "2",
- "fieldName": "VKORG",
- "fieldDisc": "销售主体",
- "fieldType": "String",
- "mainGuid": "7cc70e2e-dea7-495b-85ac-639a202b4c86",
- "subGuid": "1ae34ef2-ac94-47c6-8589-59b41d5054ef"
- }
- ]
而对应的yourType的类型如下:
- public class yourType
- {
- public int ID { get; set; }
- public string fieldName { get; set; }
- public string fieldDisc { get; set; }
- public string fieldType { get; set; }
- public string mainGuid { get; set; }
- public string subGuid { get; set; }
- }
4. C# asp.Net数据(对象)转成Json数据
- JavaScriptSerializer serializer = new JavaScriptSerializer();
- var jsonData = serializer.Serialize(list);
posted on 2017-06-08 15:36 alex5211314 阅读(320) 评论(0) 编辑 收藏 举报