WebService传多个参数和返回多个参数的方法

WebService方面:

 

在webService项目中新建两个类访问性都为public
request:用来存放请求参数;

 

1 public class request
2 {
3 public request()
4 {
5 }
6 public string name;
7 public string sex;
8 public int age;
9 public string enable;
10 }

response:用来存放应答参数;

 

 

1 public class response
2 {
3 public response()
4 {
5
6 }
7 public string name2;
8 public string sex2;
9 public int age2;
10 public bool marry;
11 }

在webService中使用方法:

 

 

1 [WebMethod(Description = "real test")]
2 public response change(request re)
3 {
4 response resp = new response();
5 resp.name2 = re.name + "2";
6 resp.sex2 = re.sex + "2";
7 resp.age2 = re.age + 2;
8 resp.marry = false;
9 return resp;
10 }

 

这个方法测试接收多个参数,并改变其值后返回多个参数

 


在Web项目中调用WebService:

添加webService的引用,假设引用名为localhost,使用该webService的方法如下:
客户端不用再另加request和response两个类。

 

1 localhost.request re = new localhost.request();
2 re.name = "aa";
3 re.sex = "man";
4 re.age = 12;
5 re.enable = "true";
6 localhost.Service ser = new localhost.Service();
7 localhost.response res = ser.change(re);
8 Response.Write(res.name2+"<br>"+res.sex2+"<br>"+res.age2.ToString()+"<br>"+res.marry.ToString());

 

关于调用webservice时出现401错误:Access Denied 
解决办法:将webservice的访问权限加上“允许匿名访问”,在webService属性的“目录安全性”选项卡中。

 

posted @ 2010-08-11 16:33  aksoft  阅读(1518)  评论(0编辑  收藏  举报