当前位置:  开发笔记 > 编程语言 > 正文

Web Service返回具有空字段的对象

如何解决《WebService返回具有空字段的对象》经验,为你挑选了1个好方法。

从来没见过这个.

WebService.Implementation imp = new WebService.Implementation();
WebService.ImplementationRequest req = new WebService.ImplementationRequest();
return imp.GetValue(req);

imp返回的对象不为null.它按预期返回ImplementationResponse.但该对象中的所有字段都为空.这不是预期的.目前,WebService只返回一些常量虚拟数据.我们已经在另一台开发人员的机器上测试了这个,运行得很好.

我想我还应该注意,如果我将null传递给GetValue方法,WebService应该抛出异常.它没有.不适合我.

任何想法,我的环境可能会导致WebService返回一个对象,但是使该对象中的每个值都为空?不知何故,当它应该抛出异常时,"神奇地"回归这个神秘物体?



1> Rezlaj..:

当生成的代码与Web服务返回的xml之间存在差异时,通常会发生这种情况,因此无法对其进行反序列化.

再次获取wsdl,重新生成所有代理类,然后重试.确保发送正确的虚拟数据.

更新:

过去常常发生这种情况,因为Web服务不是由我的团队管理的,我们也不会注意到对服务所做的更改.我们最终拦截了Web服务管道中的soap消息以进行调试.这是一个很好的资源,让你在路上.

您不需要更改管道中的任何内容,只需抓取soap消息并保存它们,以便稍后进行调试.大多数时候,事实证明这是合同的变化.其他时候我们没有合同,所以没有抓住信封就无法知道变化.

无论如何,即使这不是你的问题,我认为这是一件好事.

推荐阅读
夏晶阳--艺术
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有