C# WebService发送数据问题
另一边开放的服务的方法是这样的execute(InvType[] requestMessage)
我要传值给他,代码怎么写呢?没用过数组的菜鸟一枚,谢谢各位了
InvType数组里有15个参数 webservice 数据 开放 c# --------------------编程问答-------------------- InvType[] requestMessage = new InvType[]{r1,r2...r15};//假设你有15个InvType类型的变量
然后execute(requestMessage);//就可以了。 --------------------编程问答-------------------- 首先ws传参都是强类型的,
因此你引用了WS后,就可以得到方法所需参数的类型。
--------------------编程问答--------------------
里面的15个参数是STRING DATETIME或者DECIMAL,我一这样去调用就报类型转换出错 --------------------编程问答--------------------
会报这种错误
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” --------------------编程问答--------------------
指的是15个参数的类型?那个我看到了,可是不知道怎么把值传到他这个方法里面 --------------------编程问答-------------------- 数组里面的每一个元素的类型要一致,像你这样有的是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];--------------------编程问答-------------------- 指的是15个参数的类型?那个我看到了,可是不知道怎么把值传到他这个方法里面
kc[0].r1 = ls_string1;
......
kc[0].r15=ls_string15;
如果是这样的话,那么你的15个参数类型都可以封装成InvType类型,并且生成数组。 --------------------编程问答--------------------
怎么封装并生成数组呢? --------------------编程问答-------------------- 各位, 我已经找到原因了,是实例化的方法不对,导致没有正确给数组的元素赋上值,现在可以了
补充:.NET技术 , C#