早上好,
我有点困境。
我在C#项目中有一个web服务引用。该webservice调用一个名为“PlaceOrder”的方法。该对象具有属性为Object的属性Item。
当我创建webservice客户端的实例时,我得到一个例外,“有一个错误反映了'Item'。”。这是.net 3.5中正常生成的Web服务引用。
OrderServiceClient orderService = new OrderServiceClient();
orderService.Open(); <== exception occures here
orderService.Close();
欢迎任何帮助。
答案 0 :(得分:1)
它不知道在该财产中会发生什么;你有[XmlInclude]
等吗?但object
根本不适用于网络服务。
理想的答案是使网络服务更加具体,因此它具有(例如)Customer
(如此类型)。您是否可以包含一个服务器端代码的示例?我很惊讶它在服务器上工作......
评论;嗯......如果是第三方,这可能会非常棘手;您可能不得不求助于编辑生成代码(如果 XmlInclude有效,我无法保证),或者黑客攻击wsdl ...并不简单。它听起来就像你正在使用2.0 web服务引用(wsdl.exe,间接)。你也可以尝试:
答案 1 :(得分:0)
好的,我找到了解决这个问题的方法。
我们设法更改了网络服务以提供不同的响应。
我与我的经理和几位高级工程师和建筑师进行了讨论,并在业务层面上解决了这个问题。
由于其他.net和Java应用程序也使用此服务(尚未构建)。因此,我们需要实施的任何黑客都无法解决这个问题。
总结一下:
编辑: 我确实发现,如果你把对象变成一个对象[]它会突然发挥作用。为什么?我不知道。