写了个asp.net应用程序,调用了两个web引用(注:两个web引用的是java写的webservice)。引用的时候,我用了两个不同的web引用名。
在两个引用的命名空间内,有好几个同名的类。我在定义其中部分这些类的对象时,使用 命名空间名.类名 这样的格式定义的。但是后面还是出现了混淆的问题。
MemberPort.SvcImpServiceService MoneyCheck = new MemberPort.SvcImpServiceService();
MemberPort.SvcInfo MemberIn = new MemberPort.SvcInfo();
MemberPort.SvcInfo MemberOut = new MemberPort.SvcInfo();
OrderPort.SvcImpServiceService OrderAdd = new OrderPort.SvcImpServiceService();
OrderPort.SvcInfo OrderPayIn = new OrderPort.SvcInfo();
在运行程序的过程中,有一个调用了以OrderPayIn为参数的方法。程序运行到这部的时候,提示不能将MemberPort.SvcInfo强制转换成OrderPort.SvcInfo的错误。我专门做了测试,程序中只调用一个接口的时候,不会出现错误。但是调用两个接口的时候就会报错。请问诸位有何办法解决。因为实际需求中,肯定需要同时调用两个接口的。

解决方案 »

  1.   

    写全了也无效。不是提示“不能将MemberPort.SvcInfo强制转换成OrderPort.SvcInfo的错误”就是提示“不能将OrderPort.SvcInfo强制转换成MemberPort.SvcInfo的错误”咋办???
      

  2.   

    我就是奇怪了,我明明定义了对象OrderPayIn是属于OrderPort.SvcInfo类。编写的时候,系统也认为 OrderPayIn是OrderPort.SvcInfo类。
    然后属于OrderPort.SvcImpServiceService类的对象OrderAdd,有一个方法,要用到参数,参数是OrderPort.SvcInfo类的,我用的参数就填的是OrderPayIn,然后就会爆错“不能将MemberPort.SvcInfo强制转换成OrderPort.SvcInfo的错误。”最后生成的程序怎么就会爆这种错呢。还有个调用MemberPort.SvcInfo类为参数的方法,也爆类似的错,只是内容是:“不能将OrderPort.SvcInfo强制转换成MemberPort.SvcInfo的错误。”大家认为可能是什么问题,有什么办法规避,或者解决。