导读: asp生成json(共3篇)ASP 发送及处理JSON格式请求ASP 发送及处理JSON格式请求JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于阅读和编写,同时也易于解析和生成。JSON基于JavaScript的一个子集,采用完全独立于语言的文本格式,但是也使用了类似于C语言...
本文是中国招生考试网(www.chinazhaokao.com)成考报名频道为大家整理的《asp生成json》,供大家学习参考。
ASP 发送及处理JSON格式请求
asp生成json 第一篇
ASP 发送及处理JSON格式请求
JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于阅读和编写,同时也易于解析和生成。JSON基于JavaScript的一个子集,采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C,C++,C#,Java,JavaScript,Perl,Python等),这些特性使JSON成为理想的数据交换语言。
可以使用eval()方法调用JavaScript编译器把JSON文本转变成对象。因为JSON是JavaScript的一个确切子集,编译器可以正确地解析JSON文本,然后生成一个对象结构。例如,下面的语句即使用eval()方法将JSON文本friend转换成对象j将JSON文本转换为对象后,便可以使用索引来获取相应的值。例如,下面的
Asp net 将数据库里的记录转换成json
asp生成json 第二篇
Asp.net 将数据库里的记录转换成json
在前面我已经写了asp的版本,最近一个项目中正好需要用json来填充下拉框,所以写了一个asp.net的将数据库里的记录转换成json,代码如下:
以下是引用片段:
using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
using System.Data.SqlClient;
namespace OTC.Utility
...{
public sealed class JSONHelper
...{
/**////
/// 获取JSON字符串
///
/// 值
/// 数据表名
///
public static string GetJSON(SqlDataReader drValue, string strTableName)
...{
StringBuilder sb = new StringBuilder();
sb.AppendLine("{");
sb.AppendLine(" " + strTableName + ":{");
sb.AppendLine(" records:[");
try【asp生成json】
...{
while (drValue.Read())
...{
sb.Append(" {");
for (int i = 0; i < drValue.FieldCount; i++)
...{
sb.AppendFormat(""{0}":"{1}",", drValue.GetName(i), drValue.GetValue(i));
}
sb.Remove(sb.ToString().LastIndexOf(’,’), 1);
sb.AppendLine("},");
}
sb.Remove(sb.ToString().LastIndexOf(’,’), 1);
}
catch(Exception ex)
...{
throw new Exception(ex.Message);
}
finally
...{
drValue.Close();
}
sb.AppendLine(" ]");
sb.AppendLine(" }");
sb.AppendLine(" };");
return sb.ToString();
}
}
} 接下来你只需要传一个SqlDataReader对象就可以了。
asp.netJson序列化
asp生成json 第三篇
ASP.net中用JSON序列化对象
过去我们使用JSON.net序列化一个对象,在asp.net3.5中已经集成了序列化对象为json的方法。
我们分别针对System.Runtime.Serialization.Json和System.Web.Script.Serialization两个命名空间下的不同方法进行序列化和反序列化。
第一种方法:
System.Runtime.Serialization.Json【asp生成json】
(在vs2008添加引用System.Runtime.Serialization 如果在非WEB项目下还需要引用System.ServiceModel.Web)
JosnHelper.CS 代码如下:
1 public class JsonHelper
2 {
3 /// <summary>
4 /// 生成Json格式
5 /// </summary>
6 /// <typeparam name="T"></typeparam>
7 /// <param name="obj"></param>
8 /// <returns></returns>
9 public static string GetJson<T>(T obj)
10 {
11 DataContractJsonSerializer json = new DataContractJsonSerializer(obj.GetType());
12 using (MemoryStream stream = new MemoryStream()) 13 {
14 json.WriteObject(stream, obj);
15 string szJson = Encoding.UTF8.GetString(stream.ToArray()); return szJson;
16 }
17 }
18 /// <summary>
19 ///
获取Json
的
Model
20 /// </summary>
21 /// <typeparam name="T"></typeparam>
22 /// <param name="szJson"></param>
23 /// <returns></returns>
24 public static T ParseFromJson<T>(string szJson) 25 {
26 T obj = Activator.CreateInstance<T>();
27 using (MemoryStream ms = new MemoryStream(Encoding.UTF
8.GetBytes(szJson)))
28 {
29 DataContractJsonSerializer serializer = new DataContractJsonSerializer(obj.GetType());【asp生成json】
30 return (T)serializer.ReadObject(ms);
31 }
32 }
33 }
下面为具体用法
声明一个需要输出JSON属性的类
1 public class topMenu
2 {
3 public string id { get; set; }
4 public string title { get; set; }
5
public
string defaulturl {
get;
set; }
6 }
本例使它循环三次 利用上面GetJson方法序列化
1 topMenu t_menu = new topMenu()
2 {
3 id = "1",
4 title = "全局",
5 defaulturl = "123456"
6 };
7
8 List<topMenu> l_topmenu = new List<topMenu>();
9 for (int i = 0; i < 3; i++)
10 {
11 l_topmenu.Add(t_menu);
12 }
13 Response.Write(JsonHelper.GetJson<List<topMenu>>(l_topmenu));
输出结果为:
[{"defaulturl":"123456","id":"1","title":"
全局"},
{"defaulturl":"123456","id":"1","title":"全局"},
{"defaulturl":"123456","id":"1","title":"全局"}]
下面利用上面ParseFromJson方法读取Json
1 string szJson = @"{""id"":""1"",""title"":""全局"",""defaulturl"":""123456""} "; 2 topMenu t_menu2 = JsonHelper.ParseFromJson<topMenu>(szJson); 3 Response.Write(t_menu2.title);
输出结果为:全局
第二种方法
System.Web.Script.Serialization (引用System.Web.Extensions.dll)
还是用到上面方法中JSON属性的类
下面和上面方法中一样。循环三次就。序列化方式不一样
1 topMenu t_menu = new topMenu()
2 {
3 id = "1",
4 title = "全局",
5 defaulturl = "123456"
6 };
7
8 List<topMenu> l_topmenu = new List<topMenu>(); 9
10 for (int i = 0; i < 3; i++)
11 {
12 l_topmenu.Add(t_menu);
13 }
下面用这种方式输出:
最新推荐成考报名
更多- 歇后语_歇后语大全_歇后语大全及答案_爆笑歇后语
- 大学排名_大学排名2018排行_大学查询_中国大学名单
- 成语大全_四字成语_在线成语词典_成语查询
- 成语接龙大全查询,成语接龙游戏,在线成语接龙
- 全国安全教育平台入口_学校安全教育平台
- 社保查询网-社会保障卡查询,社会保险查询,社保网上查询
- 汉字简体繁体转换_在线繁体字转换工具
- 数字大写转换|人民币金额(数字)大小写转换在线工具
- 年龄计算器实际岁数计算器 - 周岁虚岁计算器
- 产假计算器-算产假计算器在线2018-2018年产假自动计算器
- 预产期计算器-怀孕孕期计算器-怀孕天数计算
- 中国文库网-教育资源网-范文文章
- 邮编区号查询网
- 致富商机网-致富点子_创业项目
- 创业项目网--最热门的投资项目
- 中国邮政邮编查询号码
- 电话区号查询
- 全国车牌号归属地大全
- 在线网速测试|宽带速度测试
- 人民币汇率查询
- ●理财有没有风险 金融互联网理财
- ●qq网名
- ●2016最新伤感说说
- ●谈笑风生造句
- ●读书的名言
- ●资产清查报告
- ●贫困户申请书
- ●财务自查报告
- ●离婚起诉书
- ●赞美老师的演讲稿
- ●车间管理
- ●车辆购置税
- ●跨越百年的美丽读后感
- ●跟女友离别的话
- ●超市管理制度
- ●起诉状范本
- ●赠别诗大全
- ●描写夏天的句子
- ●描写友谊的诗句
- ●迁户口申请书
- ●转正申请表范本
- ●这个杀手不太冷台词
- ●运动会稿子精选
- ●那么那么造句
- ●送给男朋友的情话大全
- ●钳工实训报告
- ●霸气说说大全
- ●骂人不带脏字的
- ●幼儿园见习个人总结
- ●追女孩子的短信