我正在编写一个.NET c#Web服务客户端,它查询Web服务并获取结果集作为响应。
当我使用此客户端查询Web服务时,它返回结果集但仅返回部分集。通过SOAPUI调用时,相同的Web服务返回58条记录,但在.NET客户端中它只返回5. 58是预期的记录数,我在从.NET客户端发出请求时没有应用任何过滤器。
.NET客户端收到的这5条记录中有一个以xsi:nil =“true”返回的元素。结果集的XSD对该元素的nillable属性为true。
我已经在SOAP UI中验证了请求和响应,这些都经过验证。
不确定为什么.NET客户端无法接收完整数据。有什么想法吗?
更新:.NET中生成的引用类对XSD中标记为isnullable的元素具有[System.Xml.Serialization.XmlElementAttribute(IsNullable = true)]。所以当我编写post对象时,这个元素会自动添加。由于这是发布对象的一部分,因此Web服务将此视为过滤条件,因此返回xsi:nill = true的记录。这个问题现在解决了。感谢大家的支持。