首页 > 开发 > 综合 > 正文

WebServices中ArrayList做参数为什么有问题

2024-07-21 02:21:23
字体:
来源:转载
供稿:网友
我在webservice中写了一个方法,用arraylist做参数,返回也是arraylsit

[webmethod]
public arraylist getarraylist2(arraylist arraylist)
{
return arraylist;
}

然后我在一个asp.net的客户端调用

private void button1_click(object sender, system.eventargs e)
{

localhost.service1 s = new testweb.localhost.service1();
arraylist al = new arraylist();
al.add("arraylist_1");
al.add("arraylist_2");

//下面这句要出错,说al不能转变成object[]类型
arraylist aa = s.getarraylist2(al);

foreach(string str in aa)
{
response.write(str);
}
}

查看vs.net自动生成的reference.cs文件,发现参数实际变了
/// <remarks/>
[system.web.services.protocols.soapdocumentmethodattribute("http://tempuri.org/getarraylist2", requestnamespace="http://tempuri.org/", responsenamespace="http://tempuri.org/", use=system.web.services.description.soapbindinguse.literal, parameterstyle=system.web.services.protocols.soapparameterstyle.wrapped)]
public object[] getarraylist2(object[] arraylist) {
object[] results = this.invoke("getarraylist2", new object[] {
arraylist});
return ((object[])(results[0]));
}


这是为什么啦?



发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表