web前端

位置:IT落伍者 >> web前端 >> 浏览文章

访问WebService传递复杂参数


发布日期:2019年04月23日
 
访问WebService传递复杂参数

数据类型(AspNet Ajax)

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

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

手动编写默认的构造函数

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

设置的属性必须有Setter方法

使用JSON进行传输格式

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

json格式可以分成三种

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

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

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

) 并列的数据之间用逗号()分隔

) 映射用冒号()表示

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

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

给出一个例子

[

{城市:北京面积:人口:}

{城市:上海面积:人口:}

]

下面给出一个例子

当然包括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!=)

{

var userentity={UserID:txtuseridvalueDesignationKindID:MailAddress:txtmailvalue

GradeID:UserPsw:txtpawvalueQuestion:selectidvalueAnswer:txtanswervalueUserName:

Point:UserType:LockTime:LoginCount:LoginTime:}

GetUserServiceUserServiceRegisterUser(userentityRegisterSucceeded);

}

else

{

var userentity={UserID:txtuseridvalueDesignationKindID:MailAddress:txtmailvalue

GradeID:UserPsw:txtpawvalueQuestion:txtcustomvalueAnswer:txtanswervalueUserName:

Point:UserType:LockTime:LoginCount:LoginTime:}

GetUserServiceUserServiceRegisterUser(userentityRegisterSucceeded);

}

}

function RegisterSucceeded(result)

{

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

else alert(注册失败);

}

服务器内容是

[WebMethod]

public bool RegisterUser(UserEntity userentity)

{

userentityPoint = intParse(ConfigurationManagerAppSettings[UserBeginPoint]);

userentityUserPsw = FormsAuthenticationHashPasswordForStoringInConfigFile(userentityUserPsw MD);

if (UserDataInsertUser(userentity))

return true;

else

return false;

}

这个UserEntity是

using System;

using SystemCollectionsGeneric;

using SystemLinq;

using SystemText;

namespace SQLProduct

{

public class UserEntity

{

public string UserID { set; get; }

public int DesignationKindID { set; get; }

public string MailAddress { set; get; }

public int GradeID { set; get; }

public string UserPsw { set; get; }

public string Question { set; get; }

public string Answer { set; get; }

public string UserName { set; get; }

public int Point { set; get; }

public string UserType { set; get; }

public string LockTime { set; get; }

public int LoginCount { set; get; }

public string LoginTime { set; get; }

}

}

               

上一篇:在MVC下用XML实现breadcrumbs导航栏

下一篇:DataGrid Web控件深度历险(2) Part2