访问WebService传递复杂参数

数据类型(Asp.Net Ajax)

参数类型一定要有默认的构造函数

(如果类没有写构造函数)编译器会自动生成默认构造函数

-手动编写默认的构造函数

客户端设置类型公有的域变量及属性

-设置的属性必须有Setter方法

使用JSON进行传输格式

自动进行序列化与反序列化

json格式可以分成三种

第一种类型是scalar(标量),也就是一个单独的string(字符串)或数字(numbers),比如“北京”这个单独的词。

第二种类型是sequence(序列),也就是若干个相关的数据按照一定顺序并列在一起,又叫做array(数组)或List(列表),比如“北京,东京”。

第三种类型是mapping(映射),也就是一个名/值对(Name/value),即数据有一个名称,还有一个与之相对应的值,这又称作hash(散列)或dictionary(字典),比如“首都:北京”。

1) 并列的数据之间用逗号(“,”)分隔。

2) 映射用冒号(“:”)表示。

3) 并列数据的集合(数组)用方括号("[]")表示。

4) 映射的集合(对象)用大括号(“{}”)表示。

给出一个例子:

[

{"城市":"北京","面积":16800,"人口":1600},

{"城市":"上海","面积":6400,"人口":1800}

]

下面给出一个例子

当然包括ScriptManager

function UserOK()

{

checkAllInfo();

var txtuserid=$get("txtUserID");

var txtcustom=$get("customQuestion");

var selectid=$get("SelectQuestion");

var txtanswer=$get("txtAnswer");

var txtmail=$get("txtMailBoxAddress");

var txtpaw=$get("txtUserPassword");

if(selectid!=10)

{

var userentity={"UserID":txtuserid.value,"DesignationKindID":1,"MailAddress":txtmail.value,

"GradeID":1,"UserPsw":txtpaw.value,"Question":selectid.value,"Answer":txtanswer.value,"UserName":"0",

"Point":"0","UserType":"0","LockTime":"0","LoginCount":0,"LoginTime":"0"}

GetUserService.UserService.RegisterUser(userentity,RegisterSucceeded);

}

else

{

var userentity={"UserID":txtuserid.value,"DesignationKindID":1,"MailAddress":txtmail.value,

"GradeID":1,"UserPsw":txtpaw.value,"Question":txtcustom.value,"Answer":txtanswer.value,"UserName":"0",

"Point":"0","UserType":"0","LockTime":"0","LoginCount":0,"LoginTime":"0"}

GetUserService.UserService.RegisterUser(userentity,RegisterSucceeded);

}

}

function RegisterSucceeded(result)

{

if(result)alert("注册成功");

else alert("注册失败");

}

上一页 1 2 下一页
------分隔线----------------------------
热点推荐
· 首页 · 注册

百鸣[Baiming.org]欢迎您 百鸣[Baiming.org]欢迎您~