将对象转换为json格式字符串:

private JavaScriptSerializer serializer = new JavaScriptSerializer();
protected void Page_Load(object sender, EventArgs e)
{
Books book = new Books();
book.BookId = ;
book.BookName = "书籍1";
book.BookCount = ;
string jsonStr = serializer.Serialize(book);
//jsonStr结果:{"BookId":1,"BookName":"书籍1","BookCount":999}
}

Aspx前台页面,jQuery发送Ajax请求:

function loadrecomticket() {
jQuery.post(
"/Ajax/TicketBoxAsx.ashx",
{
ajaxMethod: "getrecomticket",
random: Math.random()
},
function(data) {
if (data.result) { //面向对象思想:把返回的对象data,直接data.result,类似对象.属性名
$("#M1_LeftCount").html(data.list[0].leftCount);
$("#M1_GetCount").html(data.list[0].GetCount);
$("#M_UsedCount").html(data.list[0].UsedCount); $("#M2_LeftCount").html(data.list[1].LeftCount);
$("#M2_GetCount").html(data.list[1].GetCount);
$("#M2_UsedCount0").html(data.list[1].UsedCount); $("#M3_LeftCount").html(data.list[2].LeftCount);
$("#M3_Getcount").html(data.list[2].GetCount);
$("#M3_UsedCount").html(data.list[2].UsedCount);
}
},
"json");
}

一般处理程序接收参数并处理请求,返回json格式数据:

namespace Test.Ajax
{
/// <summary>
/// $codebehindclassname$ 的摘要说明
/// </summary>
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
public class TicketBoxAsx : BaseCommon, IHttpHandler
{
private Business.RecomTicket recomTicket = new Business.RecomTicket(); public void ProcessRequest(HttpContext context)
{
if (this.UserId > )
{
if (!string.IsNullOrEmpty(context.Request["ajaxMethod"]))
{
context.Response.ContentType = "text/plain";
string ajaxMethod = context.Request["ajaxMethod"].ToLower();
switch (ajaxMethod)
{
case "getrecomticket":
GetRecomTicket(context);
break;
}
}
}
else
{
Utility.ResponseWriteEnd(this.ProcessResponseText("({result:0,error:'请先登录!'})"));
}
} public bool IsReusable
{
get
{
return false;
}
} private void GetRecomTicket(HttpContext context)
{
TicketBoxInfo M1 = new TicketBoxInfo(); //创建3个对象
TicketBoxInfo M2 = new TicketBoxInfo();
TicketBoxInfo M3 = new TicketBoxInfo();
BusinessResult<RecomTicketInfo> info = this.recomTicket.GetUserVoteTicket(this.UserId);
if (info.IsSuccess)
{
RecomTicketInfo recomTicketInfo = info.ReturnObject;
//为3个对象属性赋值
M1.leftCount = Math.Max(recomTicketInfo.MaxRecomTicket - recomTicketInfo.TodayUsedRecomTicket, );
M1.MGetCount = recomTicketInfo.MaxRecomTicket;
M1.UsedCount = recomTicketInfo.TodayUsedRecomTicket;

M2.leftCount = Math.Max(recomTicketInfo.MaxRecomTicket - recomTicketInfo.TodayMMUsedRecomTicket, );
M2.MGetCount = recomTicketInfo.MaxRecomTicket;
M2.UsedCount = recomTicketInfo.TodayMMUsedRecomTicket;

M3.leftCount = Math.Max(recomTicketInfo.MaxRecomTicket - recomTicketInfo.TodayWXUsedRecomTicket, );
M3.MGetCount = recomTicketInfo.MaxRecomTicket;
M3.UsedCount = recomTicketInfo.TodayWXUsedRecomTicket; }
JavaScriptSerializer js = new JavaScriptSerializer(); //命名空间:using System.Web.Script.Serialization;
Utility.ResponseWriteEnd(this.ProcessResponseText("({result:1, list:[" + js.Serialize(M1) + "," + js.Serialize(M2) + "," + js.Serialize(M3) + "]})"));
} }
}

备注:

JSON格式:

普通形式:
{ "firstName": "Brett", "lastName":"McLaughlin", "email": "aaaa" } 数组形式:
.单元素:
{
"people": [
{ "firstName": "Brett", "lastName":"McLaughlin", "email": "aaaa" },
{ "firstName": "Jason", "lastName":"Hunter", "email": "bbbb"},
{ "firstName": "Elliotte", "lastName":"Harold", "email": "cccc" }
]
} .多元素:
{ "programmers": [
{ "firstName": "Brett", "lastName":"McLaughlin", "email": "aaaa" },
{ "firstName": "Jason", "lastName":"Hunter", "email": "bbbb" },
{ "firstName": "Elliotte", "lastName":"Harold", "email": "cccc" }
],
"authors": [
{ "firstName": "Isaac", "lastName": "Asimov", "genre": "science fiction" },
{ "firstName": "Tad", "lastName": "Williams", "genre": "fantasy" },
{ "firstName": "Frank", "lastName": "Peretti", "genre": "christian fiction" }
],
"musicians": [
{ "firstName": "Eric", "lastName": "Clapton", "instrument": "guitar" },
{ "firstName": "Sergei", "lastName": "Rachmaninoff", "instrument": "piano" }
] } 格式应用
掌握了 JSON 格式之后,在 JavaScript 中使用它就很简单了。JSON 是 JavaScript 原生格式,这意味着在 JavaScript 中处理 JSON 数据不需要任何特殊的 API 或工具包。
赋值给变量
例如,可以创建一个新的 JavaScript 变量,然后将 JSON 格式的数据字符串直接赋值给它: var people = { "programmers": [ { "firstName": "Brett", "lastName":"McLaughlin", "email": "aaaa" },
{ "firstName": "Jason", "lastName":"Hunter", "email": "bbbb" },
{ "firstName": "Elliotte", "lastName":"Harold", "email": "cccc" }
],
"authors": [
{ "firstName": "Isaac", "lastName": "Asimov", "genre": "science fiction" },
{ "firstName": "Tad", "lastName": "Williams", "genre": "fantasy" },
{ "firstName": "Frank", "lastName": "Peretti", "genre": "christian fiction" }
],
"musicians": [
{ "firstName": "Eric", "lastName": "Clapton", "instrument": "guitar" },
{ "firstName": "Sergei", "lastName": "Rachmaninoff", "instrument": "piano" }
数据访问:
people.authors[].genre // Value is "fantasy" 下标从0开始
people.musicians[].lastName // Undefined. This refers to the fourth entry, and there isn't one
people.programmers[].firstName // Value is "Elliotte"

百度百科JSON介绍>>

博文推荐:C# JSON字符串序列化与反序列化

格式应用

掌握了 JSON 格式之后,在 JavaScript 中使用它就很简单了。JSON 是 JavaScript 原生格式,这意味着在 JavaScript 中处理 JSON 数据不需要任何特殊的 API 或工具包。

赋值给变量

例如,可以创建一个新的 JavaScript 变量,然后将 JSON 格式的数据字符串直接赋值给它:
[3]
1
2
3
4
5
6
7
8
9
10
11
12
13
var people = { "programmers": [ { "firstName": "Brett", "lastName":"McLaughlin", "email": "aaaa" },
{ "firstName": "Jason", "lastName":"Hunter", "email": "bbbb" },
{ "firstName": "Elliotte", "lastName":"Harold", "email": "cccc" }
],
"authors": [
{ "firstName": "Isaac", "lastName": "Asimov", "genre": "science fiction" },
{ "firstName": "Tad", "lastName": "Williams", "genre": "fantasy" },
{ "firstName": "Frank", "lastName": "Peretti", "genre": "christian fiction" }
],
"musicians": [
{ "firstName": "Eric", "lastName": "Clapton", "instrument": "guitar" },
{ "firstName": "Sergei", "lastName": "Rachmaninoff", "instrument": "piano" }

使用C#中JavaScriptSerializer类将对象转换为Json格式数据的更多相关文章

  1. 使用Javascript/jQuery将javascript对象转换为json格式数据 - 海涛的CSDN博客 - 博客频道 - CSDN.NET

    body{ font-family: "Microsoft YaHei UI","Microsoft YaHei",SimSun,"Segoe UI& ...

  2. ObjectMapper用于将java对象转换为json格式数据以及JSONObject对象解析json格式数据

    ObjectMapper objectMapper = new ObjectMapper(); //反序列化的时候如果多了其他属性,不抛出异常 objectMapper.configure(Deser ...

  3. JSon_零基础_005_将po(bean)对象转换为JSon格式的对象字符串,返回给界面

    将po(bean)对象转换为JSon格式的对象字符串,返回给界面 导入jar包: 编写po(bean)类: package com.west.webcourse.po; /** * 第01步:编写be ...

  4. JSon_零基础_004_将Set集合对象转换为JSon格式的对象字符串,返回给界面

    将Set集合对象转换为JSon格式的对象字符串,返回给界面 需要导入的jar包: 编写:servlet: package com.west.webcourse.servlet; import java ...

  5. JSon_零基础_003_将Map集合对象转换为JSon格式的对象字符串,返回给界面

    将Map集合对象转换为JSon格式的对象字符串,返回给界面 需导入的jar包: 编写servlet: package com.west.webcourse.servlet; import java.i ...

  6. 对象转换为json格式,类似中间层API

    <一头扎进SpringMvc视频教程\<一头扎进SpringMvc>第四讲 源码\> 对象自动转换为json格式要在 spring-mvc.xml添加一个东西 ,和对应的命名空 ...

  7. js对象转换为json格式时,js对象属性中有值为null和undefined注意事项

    当属性值为null时: 当属性值为undefined时: 只有当属性值为未定义时, js对象转换成json格式时会忽略该属性.

  8. c# 将匿名类或者集合转Json格式数据一些方法

    要说写这个功能呢也是因为工作需要,白天呢上班写个Web页面需要ajax请求后台并将数据以Json格式传会前端,由于公司特殊性吧,不能连外网(很苦比).所以只有等到晚上回家上网边查边写! public ...

  9. 在SQL中直接把查询结果转换为JSON数据

    下面这篇中,已经有准备一些数据: <MS SQL server对象类型type>https://www.cnblogs.com/insus/p/10903916.html 为前端服务,直接 ...

随机推荐

  1. git重写历史记录

    1 修改上一次历史提交,替换掉上次的提交git commit --amend 2 git rebase 将不同分支路径合并到同一分支路径上eg:将master分支上的 conflic rebase合并 ...

  2. 查看Oracle的SID用户名等信息

    源地址:http://zhidao.baidu.com/question/681563406501077052.html 用sysdba身份登录 比如 conn /as  sysdba 匿名管理员登陆 ...

  3. SQL Server 2005中的分区表(五):添加一个分区(转)

    所谓天下大事,分久必合,合久必分,对于分区表而言也一样.前面我们介绍过如何删除(合并)分区表中的一个分区,下面我们介绍一下如何为分区表添加一个分区. 为分区表添加一个分区,这种情况是时常会 发生的.比 ...

  4. SQL Server 2005中的分区表(四):删除(合并)一个分区(转)

    在前面我们介绍过如何创建和使用一个分区表,并举了一个例子,将不 同年份的数据放在不同的物理分区表里.具体的分区方式为: 第1个小表:2010-1-1以前的数据(不包含2010-1-1). 第2个小表: ...

  5. spring和springmvc之间的整合

    一.springmvc就是运行在spring的环境下,这两者是否需要进行整合,即:是不是要把service .dao . 事务 .和其它框架的整合放在springmvc的配置文件中.这样子在技术层面上 ...

  6. C# UserControl 判断DesignMode

    C# UserControl 判断DesignMode   .Net开发UserControl时,我们经常需要得知当前是Design Mode还是Runtime Mode. 在Design Mode时 ...

  7. JAVA~多线程:sleep、yield方法

    sleep不考虑其它线程的优先级 yield让位给相同或更高优先级的线程 sleep yield package multiThread2; public class TestThread042Yie ...

  8. C# OpenFileDialog

    OpenFileDialog 用于浏览并打开文件,在Windows Forms中使用,表现为标准的Windows对话框. 实例: 1.新建Windows Form Application 2.添加Op ...

  9. 为网站加入Drupal星球制作RSS订阅源

    目前中文 Drupal 星球的版块还未成立,但大家的积极性挺高,不少站长都已经调整好自己的网站,生成了可供Drupal Planet 使用的RSS订阅源. 如果你也想让网站做好准备,可以不必再花上不少 ...

  10. c++需要注意的地方和小算法

    C++11的标准 auto //可以自动类型, auto cars=//自动转化为int 强制转换 (long)thorn =long (thorn) //前者是c标准,后者是c++ 还有一种 sta ...