LitJson JavaScriptSerializer
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls; using LitJson;
using System.Data;
using System.Collections;
using System.Web.Script.Serialization; public class Person
{ public string Name { get; set; }
public int Age { get; set; }
} public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
//Response.AddHeader("Content-Type", "application/json;");
//Response.ContentType = "application/json";
//Response.ContentEncoding = System.Text.Encoding.UTF8;
#region LitJson练习
JsonData jd = new JsonData();
jd["sada"] = "dsad";
jd["www"] = ;
JsonData jr = new JsonData();
jr["m"] = jd;//可以赋值,也可以赋值jsondata
jr["time"] = DateTime.Now.ToLocalTime().ToString();
jr["qqq"] = ;
jr["asda"] = "dawd";
string json = JsonMapper.ToJson(jr);//②步,jsondata不是json字符串,还要把jsondata序列化,
Response.Write(json);
// {
// "m": {
// "sada": "dsad",
// "www": 123
// },
// "time": "2015-04-19 14:38:41",
// "qqq": 567,
// "asda": "dawd"
// }
#endregion
#region ArrayList,List<>--->[]随意是数字,字符串
//ArrayList arr1 = new ArrayList();
//arr1.Add("dasda");
//arr1.Add("mmm");
//arr1.Add(99999);
//string rdt = JsonMapper.ToJson(arr1);//["dasda","mmm",99999]
//Response.Write(rdt); //List<int> list1 = new List<int>();
//list1.Add(5);
//list1.Add(8);
//string rmt = JsonMapper.ToJson(list1);//[5,8]
//Response.Write(rmt); //List<string> list = new List<string>();
//list.Add("xiaoming");
//list.Add("xiaohong");
//string rat = JsonMapper.ToJson(list);//["xiaoming","xiaohong"]数组
//Response.Write(rat);
#endregion
#region 键值对-->{}字典Hashtable,Dictionary<>,序列化成json,唯一要求键要为字符串 //Hashtable has = new Hashtable();
//has.Add("1", "sada");
//has.Add("5", 99);
//string str = JsonMapper.ToJson(has);
//Response.Write(str); //Dictionary<string, int> dic1 = new Dictionary<string, int>();
//dic1.Add("1", 5);
//dic1.Add("3", 9);
//var json = JsonMapper.ToJson(dic1);
//Response.Write(json); //Dictionary<string, string> dic = new Dictionary<string, string>();//
//dic.Add("xiaohong", "28");
//dic.Add("xiaolan", "22");
//string json = JsonMapper.ToJson(dic);//{"xiaohong":"28","xiaolan":"22"}
//Response.Write(json);
#endregion
#region 无法将类型为“system.int32”的对象强制转换为类型“system.string”。
//Hashtable has = new Hashtable();
//has.Add(1, "sada");
//has.Add(5, "sadjdi");
//string str = JsonMapper.ToJson(has);//无法将类型为“System.Int32”的对象强制转换为类型“System.String”
//Response.Write(str); //Dictionary<int, string> dic = new Dictionary<int, string>();//
//dic.Add(1, "dawd");
//dic.Add(9, "www");
//string json = JsonMapper.ToJson(dic);
//Response.Write(json); //Dictionary<int, int> dic1 = new Dictionary<int, int>();
//dic1.Add(1, 5);
//dic1.Add(3, 9);
//var json = JsonMapper.ToJson(dic1);
//Response.Write(json);//无法将类型为“System.Int32”的对象强制转换为类型“System.String”
#endregion
#region JavaScriptSerializer,内置序列化的一种方式,同上,键为字符串
//JavaScriptSerializer javascriptSerializer = new JavaScriptSerializer();
//var json = javascriptSerializer.Serialize(dic1);
//Response.Write(json);
#endregion
#region 普通类-->{},JsonMapper.ToJson(),JavaScriptSerializer和序列化普通类
//Person p = new Person();
//p.Name = "like";
//p.Age = 24;
//string ret = JsonMapper.ToJson(p);//{"Name":"like","Age":24} //Person p1 = new Person();
//p.Name = "like";
//p.Age = 24;
//JavaScriptSerializer javascriptSerializer = new JavaScriptSerializer();
//var json = javascriptSerializer.Serialize(p1);
//Response.Write(json);
#endregion
}
}
全部代码
对一个集合,要求不序列化完,对其中的几项序列化。这时内置序列化对象就不方便。这是用LitJson[“key”]=value;方便。
List<RechargeM> list = RecBL.GetTB(Gid);
foreach (var item in list)
{
JsonData jd = new JsonData();
jd["ID"] = Tools.GetString(item.Id);
jd["Num"] = item.cRech_Num;
jd["Money"] = item.mRech_Money;
jd["Date"] = Tools.GetString(item.dRech_Date);
row.Add(jd);
}
Jlist["RechargeLis"] = row;
LitJson JavaScriptSerializer的更多相关文章
- JavaScriptSerializer 序列化json 时间格式
利用JavaScriptSerializer 序列化json 时间格式,得到的DateTime值值显示为“/Date(700000+0500)/”形式的JSON字符串,显然要进行转换 1.利用字符串直 ...
- JavaScriptSerializer使用条件
JavaScriptSerializer使用条件:需先引用组件:System.Web.Extensions 类全称:System.Web.Script.Serialization.JavaScript ...
- 在引用KindEditor编辑器时,运行时出现以下错误:错误46 找不到类型或命名空间名称“LitJson”(是否缺少 using 指令或程序集引用?)
将asp.net下bin文件夹下的文件LitJSON.dll拷贝到工程的bin目录下,并在工程中添加引用 在后台加入: using LitJson;
- 关于litJson的System.InvalidCastException
最近在做一个Unity3D的项目,用到了litJson库, 它比JavaScript里的JSON解析更加严格, 有时候解析数据的时候会出现类型不对. 比如说 {"data":12} ...
- XML数据 JSON数据 LitJSON 数据 的编写和解析 小结
用XML生成如下数据<?xml version="1.0"encoding="UTF-8"?><Transform name="My ...
- JSON 序列化和反序列化——JavaScriptSerializer实现
一. JavaScriptSerializer 类由异步通信层内部使用,用于序列化和反序列化在浏览器和 Web 服务器之间传递的数据.您无法访问序列化程序的此实例.但是,此类公开了公共 API.因此, ...
- JavaScriptSerializer序列化时间处理
JavaScriptSerializer序列化时间后会把时间序列化成N进制的鬼数据,于是查了下质料坐下记录 假设list = News List<Text>(){new Text(){id ...
- JavaScriptSerializer 中的匿名类型 转json
二:JavaScriptSerializer 中的匿名类型 这个类型我想大家都清楚,不过性能更高的方式应该是用JsonConvert吧,但这个不是本篇讨论的话题,我们重点来看看匿名类型的Json序列化 ...
- asp.net JavaScriptSerializer实现序列化和反序列化
通过JavaScriptSerializer来实现.它的名字空间为:System.Web.Script.Serialization 如果要使用它,还须添加 System.Web.Extensions库 ...
随机推荐
- Spring Cloud 入门 之 Feign 篇(三)
原文地址:Spring Cloud 入门 之 Feign 篇(三) 博客地址:http://www.extlight.com 一.前言 在上一篇文章<Spring Cloud 入门 之 Ribb ...
- JS判断IP的正则表达式
<html> <head> <title>最简洁的IP判断正则表达式</title> <meta http-equiv="Content ...
- MySQL 瓶颈及应对措施
注:内容摘抄自<PHP 核心技术与最佳实践>一书 MySQL 是存在瓶颈的. 当 MySQL 单表数据量达到千万级别以上时,无论如何对 MySQL 进行优化,查询如何简单,MySQL 的性 ...
- !!!!!!!【unittest】unittest需要懂的的技术
https://docs.python.org/2/library/unittest.html
- Java堆外内存之二:堆外内存使用总结
目录: <堆外内存操作类ByteBuffer> <DirectBuffer> <Unsafe(java可直接操作内存(),挂起与恢复,CAS操作)> 有时候对内存进 ...
- ssh-keygen的使用方法(无密码访问)
一.概述 1.就是为了让两个linux机器之间使用ssh不需要用户名和密码.采用了数字签名RSA或者DSA来完成这个操作 2.模型分析 假设 A (192.168.20.59)为客户机器,B(192. ...
- python3 from Tkinter import * 和import Tkinter as tk两个区别import Tkinter
原文https://stackoverflow.com/questions/15974787/difference-between-import-tkinter-as-tk-and-from-tkin ...
- RmNet,CDC-ECM ,NDIS,RNDIS区别
RmNet和CDC-ECM区别:更像是两种拨号方式的区别,RmNet获取公网IP,ECD-ECM获取局域网IP. 在高通平台上,rmnet driver 和标准的CDC-ECM是有区别的,rmnet ...
- CentOS7.3下yum练手安装Nginx
安装Nginx # 查看相关信息 yum info nginx yum info httpd # 移除 httpd,也就是 Apache yum remove httpd -y # 安装 nginx ...
- linux 之 压缩 / 解压
压缩解压 tar 即可压缩也可以解压 c 压缩 如果没有z.j参数,则表示,只打包,不压缩. 就说, t 查看 z 以gzip方式压缩 相当于 gzip ?.. j 以bzip方式压缩 bzip2 ? ...