代码改变世界

用json格式返回自定义对象。(jQuery asp.net)

2011-02-28 09:22  沐海  阅读(587)  评论(0编辑  收藏  举报

客户端用一个html页面调用一个ashx文件(一般http处理程序),返回json格式的自定义对象:
html:-------------------------------------------------- 姓名: 年龄: -------------------------------------------------- handler.ashx文件:--------------------------------------------------------
using System;
using System.Web;
using System.Runtime.Serialization.Json;
using System.Collections;
using System.Runtime.Serialization;


public class Handler : IHttpHandler
{

public void ProcessRequest(HttpContext context)
{
context.Response.ContentType = "text/plain";
string name = context.Request.Params["name"].ToString();
string age = context.Request.Params["age"].ToString();
person p1 = new person(name,age);
DataContractJsonSerializer djson = new DataContractJsonSerializer(p1.GetType());
//将对象序列化为 JavaScript 对象表示法
(JSON) djson.WriteObject(context.Response.OutputStream, p1);
}
public bool IsReusable { get { return false; } }
[DataContract]//要序列化,一定要加这个属性
public class person {
[DataMember]
//属性“DataMember”只在“property, indexer, field”声明中有效。
public string Name="无名士";
[DataMember]
public string Age="0";
public override string ToString()
{
return "姓名:" + Name + "年龄:" + Age;
}
public person(string name,string age)
//自定义类

person { this.Name = name; this.Age = age; }
public person() { } } }


记录生活、工作、学习点滴!
E-Mail:mahaisong@hotmail.com 欢迎大家讨论。
沐海博客园,我有一颗,卓越的心!