webservice...自定义对象数组的问题.....高分酬谢!!!

michael_zy 2006-11-09 04:12:21
请参看以下部分代码和说明:

[WebMothod]//
public void Test(DoParam doparam)
{}

//参数是一个自定义的类.其中又包括2节.
public class DoParam
{
private string Number;
private Master_Info master;
private List_Info[] list_info;
}

public class Master_Info
{}
public class List_Info
{}

大概的结构就是这样的.但是最后生成的wsdl文件中,描述是这样的:
<s:element minOccurs="0" maxOccurs="1" form="unqualified" name="List_Infor" nillable="true" type="s0:ArrayOfList_Infor"/>

但是目前和别人定义好的描述是
<element maxOccurs="unbounded" minOccurs="0" name="List_Infor" nillable="true" type="tns1:List_Info"/>
以属性maxOccurs="unbounded来表示多行.

但是我手工把我的webservice的wsdl文件改成以上的形式后,接受参数又出错了,无法把对象赋给对象数组.如果我把list_info不定义成数组,又无法处理多行list_info的情况.

该怎么处理???请大家帮忙!!!
...全文
362 14 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
yumanqing 2007-04-07
  • 打赏
  • 举报
回复
[WebMethod]
public string test (class1[] model)
{
for (int r = 0; r < model.Length; r++)
{
model[r] //即是每个对象
}
}

//客户端
class1[] arrClass=new class1[10];//Define an array
//Init members
for(int i=0;i<10;i++)
arrClass[i]=new class1();
liujia_0421 2006-11-10
  • 打赏
  • 举报
回复
我们目前的一个项目,就是使用webservice,语言就是C#...

由于开始对Webservice不是很了解,在编码的时候又做了设计上的修改,将五层Webservice改为一层...原因就是我们在层与层之间传递的都是比较复杂的对象,严重影响了性能,另外还有些处理没法实现....

教训...
路人霆 2006-11-10
  • 打赏
  • 举报
回复
一直在.net平台下,还没有这方面经验。
虽然都是在.net下开发,但与也不能觉得说以后就不和其他平台交互,只好用webservice而不用remoting。
michael_zy 2006-11-10
  • 打赏
  • 举报
回复
不能给自己分....
大家讨论一下和其他平台,其他开发语言做webservice的接口时的经验吧.....
从下一楼开始,人者有分.
liujia_0421 2006-11-09
  • 打赏
  • 举报
回复
学习了...

TO:晕.我自己解决的问题。分不能给自己啊....郁闷...

可以给自己,但不知会不会扣信誉分...
michael_zy 2006-11-09
  • 打赏
  • 举报
回复
晕.我自己解决的问题。分不能给自己啊....郁闷...
michael_zy 2006-11-09
  • 打赏
  • 举报
回复
将 XmlElementAttribute 应用于字段时,所生成的架构以如下方式描述该元素。

复制代码
<xs:element minOccurs="0" maxOccurs="unbounded" name="Employees" type="Employee" />
msdn已经有答案了
liujia_0421 2006-11-09
  • 打赏
  • 举报
回复
楼主把原因说出来,大家分享一下...
michael_zy 2006-11-09
  • 打赏
  • 举报
回复
OK,我找到原因了
michael_zy 2006-11-09
  • 打赏
  • 举报
回复
情况就是这样的,我和另一家公司已经定义好了这个wsdl文件了,通过wsdl.exe生成的代理类,
其中 多行List_info就是被生成了List_Info[] list_info;对象数组.

然后通过.net环境生成的wsdl文件就变了.不一致了。晕.

就好比A->B,然后B->A时却不一样,变成C了。
mtrl128 2006-11-09
  • 打赏
  • 举报
回复
不了解,学习
bitpolar 2006-11-09
  • 打赏
  • 举报
回复
不懂
学习
lytone52 2006-11-09
  • 打赏
  • 举报
回复
帮顶,还真不是太了解这个问题,
michael_zy 2006-11-09
  • 打赏
  • 举报
回复
自己顶

111,098

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧