C#生成Json格式文档_第1页
C#生成Json格式文档_第2页
C#生成Json格式文档_第3页
C#生成Json格式文档_第4页
C#生成Json格式文档_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、随笔- 14 文章- 0 评论- 5 C#生成JSON数据格式的函数使用说明: 对List 集合使用的方法: List objList = objAction.GetCODE_MByList(objTbl); string JsonSource = JSONHelper.ToJSON(objList); /当前页记录转成JSON格式 但有个问题: 日期型数据谁转换成:这样的数据!?不知道谁碰到过没有! 对数据集的使用如:DataSet,DataTable JSONHelper jsonHelp = new JSONHelper(); jsonHelp.success = true; jsonH

2、elp.totlalCount = getPrjListCount(); foreach (DataRow dr in dsResult.Tables0.Rows) . jsonHelp.AddItem(PRJ_ID, drPRJ_ID.ToString(); jsonHelp.AddItem(PRJ_NAME, drPRJ_NAME.ToString(); jsonHelp.AddItem(DEP_ID, drDEP_ID.ToString(); jsonHelp.AddItem(PRJ_MANID, drPRJ_MANID.ToString(); jsonHelp.AddItem(PRJ_

3、STATE, drPRJ_STATE.ToString(); if (drPRJ_STARTDATE != DBNull.Value) . jsonHelp.AddItem(PRJ_STARTDATE, Convert.ToDateTime(drPRJ_STARTDATE).ToString(yyyy/MM/dd); else . jsonHelp.AddItem(PRJ_STARTDATE, string.Empty); if (drPRJ_ENDDATE != DBNull.Value) . jsonHelp.AddItem(PRJ_ENDDATE, Convert.ToDateTime(

4、drPRJ_ENDDATE).ToString(yyyy/MM/dd); else . jsonHelp.AddItem(PRJ_ENDDATE, string.Empty); jsonHelp.AddItem(PRJ_MEMO, drPRJ_MEMO.ToString(); jsonHelp.AddItem(CODE_NAME, drCODE_NAME.ToString(); jsonHelp.AddItem(DEP_NAME, drDEP_NAME.ToString(); jsonHelp.AddItem(USER_NAME, drUSER_NAME.ToString(); jsonHel

5、p.ItemOk(); string strResult = jsonHelp.ToString(); /#JSONHelp.cs源码#/ using System;using System.Collections;using System.Collections.Generic; using System.Text; using System.Web.Script.Serialization;namespace mon. /*/ / JSONHelper 的摘要说明 / public class JSONHelper . /对应JSON的singleInfo成员 p

6、ublic string singleInfo = string.Empty; protected string _error = string.Empty; protected bool _success = true; protected long _totalCount = 0; protected System.Collections.ArrayList arrData = new ArrayList(); public JSONHelper() . public static string ToJSON(object obj) . JavaScriptSerializer seria

7、lizer = new JavaScriptSerializer(); return serializer.Serialize(obj); public static string ToJSON(object obj, int recursionDepth) . JavaScriptSerializer serializer = new JavaScriptSerializer(); serializer.RecursionLimit = recursionDepth; return serializer.Serialize(obj); /对应于JSON的success成员 设置success

8、为TURE,代表成功#region 设置success为TURE,代表成功 public bool success . get . return _success; set . /如设置为true则清空error if (success) _error = string.Empty; _success = value; #endregion /对应于JSON的error成员 public string error . get . return _error; set . /如设置error,则自动设置success为false if (value != ) _success = false;

9、_error = value; public long totlalCount . get . return _totalCount; set . _totalCount = value; /重置,每次新生成一个json对象时必须执行该方法 public void Reset() . _success = true; _error = string.Empty; singleInfo = string.Empty; arrData.Clear(); .#region public void AddItem(string name, string value) . arrData.Add( +

10、name + : + + value + ); #endregion public void ItemOk() . arrData.Add(); /序列化JSON对象,得到返回的JSON代码 public override string ToString() . StringBuilder sb = new StringBuilder(); sb.Append(); sb.Append(totalCount: + totlalCount.ToString() + ,); sb.Append(success: + _success.ToString().ToLower() + ,); sb.Append(error: + _error.Replace(, ) + ,); sb.Append(singleInfo: + singleInfo.Replace(, ) + ,); sb.Append(data:); int index = 0; sb.Append(); if (arrData.Count = 0) . sb.Append(); else . foreach (string val in arrData) . index+; if (val != ) . sb.Append(val + ,); else . sb = sb.

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论