当前位置:编程学习 > C#/ASP.NET >>

C# WebService发送数据问题

另一边开放的服务的方法是这样的
execute(InvType[] requestMessage)

我要传值给他,代码怎么写呢?没用过数组的菜鸟一枚,谢谢各位了
InvType数组里有15个参数 webservice 数据 开放 c# --------------------编程问答-------------------- InvType[] requestMessage = new InvType[]{r1,r2...r15};//假设你有15个InvType类型的变量
然后execute(requestMessage);//就可以了。 --------------------编程问答-------------------- 首先ws传参都是强类型的,

因此你引用了WS后,就可以得到方法所需参数的类型。

--------------------编程问答--------------------
引用 1 楼 guwei4037 的回复:
InvType[] requestMessage = new InvType[]{r1,r2...r15};//假设你有15个InvType类型的变量
然后execute(requestMessage);//就可以了。


里面的15个参数是STRING DATETIME或者DECIMAL,我一这样去调用就报类型转换出错 --------------------编程问答--------------------
引用 1 楼 guwei4037 的回复:
InvType[] requestMessage = new InvType[]{r1,r2...r15};//假设你有15个InvType类型的变量
然后execute(requestMessage);//就可以了。


会报这种错误
InvType[] i =new InvType[15]{ls_string1, ls_string2, ls_string3, ls_string4, ls_string5, ls_string6, Convert.ToDecimal(ls_string7),
                    Convert.ToDecimal(ls_string8), Convert.ToDecimal(ls_string9), ls_string10,
                    ls_string11, ls_string12, ls_string13, ls_string14, ls_string15};

无法将类型“string”隐式转换为“DataAccess.ERP_APP_KCYH.InvMaintenanceType” --------------------编程问答--------------------
引用 2 楼 libinguest 的回复:
首先ws传参都是强类型的,

因此你引用了WS后,就可以得到方法所需参数的类型。


指的是15个参数的类型?那个我看到了,可是不知道怎么把值传到他这个方法里面 --------------------编程问答-------------------- 数组里面的每一个元素的类型要一致,像你这样有的是string有的是decimal是不行的。而且你的数组的元素类型要求是InvType,是需要把你的string也好,decimal也好,要转成InvType类型才能放到InvType数组里面。 --------------------编程问答--------------------
引用 6 楼 guwei4037 的回复:
数组里面的每一个元素的类型要一致,像你这样有的是string有的是decimal是不行的。而且你的数组的元素类型要求是InvType,是需要把你的string也好,decimal也好,要转成InvType类型才能放到InvType数组里面。


怎么转换呢?我是这样写的,ls_string1= (InvType)ls_string1;
可是依然在报错
CS0030: 无法将类型“string”转换为“DataAccess.ERP_APP_KCYH.InvType” --------------------编程问答-------------------- r1是方法里的一个参数,我这样赋值,就会提示NULL值

InvType[] kc = new InvType[15];
 kc[0].r1 = ls_string1;
......
kc[0].r15=ls_string15;
--------------------编程问答-------------------- 指的是15个参数的类型?那个我看到了,可是不知道怎么把值传到他这个方法里面 


如果是这样的话,那么你的15个参数类型都可以封装成InvType类型,并且生成数组。 --------------------编程问答--------------------
引用 9 楼 libinguest 的回复:
指的是15个参数的类型?那个我看到了,可是不知道怎么把值传到他这个方法里面 


如果是这样的话,那么你的15个参数类型都可以封装成InvType类型,并且生成数组。


怎么封装并生成数组呢? --------------------编程问答-------------------- 各位, 我已经找到原因了,是实例化的方法不对,导致没有正确给数组的元素赋上值,现在可以了
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,