C#使用Json

AJAX传递复杂数据如果自己进行格式定义的话会经历组装、解析的过程,因此AJAX中有一个事实上
的数据传输标准JSon。 
Json将复杂对象序列化为一个字符串,在浏览器端再将字符串反序列化为JavaScript可以读取的对象。
看一下Json的格式。Json被几乎所有语言支持。 
C#中将.Net对象序列化为Json字符串的方法: 
JavaScriptSerializer().Serialize(p),JavaScriptSerializer在System.Web.Extensions.dll中,
是.Net3.x 中新增的类,如果在 .Net2.0中则需要用第三方的组件。 
JQuery AJAX得到的data是Json格式数据,用 $.parseJSON(data)方法将JSon格式数据解析为JavaScript对象 
可以在post函数 后一个函数传递"json"则data就是反序列化以后的对象,免去了parseJSON

案例:用Json将类返回给客户端,使用JQurey
1.处理页设置 Json1.ashx

复制代码
public void ProcessRequest(HttpContext context)
    {
       context.Response.ContentType = "text/plain";
       JavaScriptSerializer jss = new JavaScriptSerializer();    //创建 JavaScriptSerializer
       string  json = jss.Serialize(new person(){Name="xgao",Age=18 });
       context.Response.Write(json);
    }

    public class person
    {
       public string Name { get; set; }
       public int Age { get; set; }
    }
复制代码

2.JAVAscript设置

复制代码
    <script type="text/javascript">
        $(function() {
            $.post("Json1.ashx", function(data, state) {
                if (state == "success") {
                    var person = $.parseJSON(data);    //利用parseJSON进行转换
                    alert(person.Name);
                    alert(person.Age);
                }
            });
        });
    </script>
复制代码

 

posted on 2017-05-11 20:58 叶祖辉 阅读( ...) 评论( ...) 编辑 收藏

转载于:https://www.cnblogs.com/yezuhui/p/6842739.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值