Web 服务调用 - 自动生成的属性

发布于 2024-10-18 08:56:40 字数 437 浏览 3 评论 0原文

我正在尝试调用 Soap Web 服务,并且需要将地址对象传递到服务器。我可以传递现有的address.Id来更新现有地址,或者如果我将address.Id留空,则应将其保存为新地址。问题在于,Id 是 long 类型,并且它的值始终为 0。

这会给服务器带来问题,因为即使 Id=0,服务器端函数也会将地址视为现有地址,并且它将开始在数据库中搜索 Id=0 的地址。当然没有这样的地址,就会抛出错误。当我尝试使用 WebService Studio 或 SoapUI 调用 Web 服务,并手动删除 id 时,它会按预期工作,一旦我输入,它就会返回错误 - 找不到 Id=0 的地址。

所以问题是,如何更改 Web 服务定义或代理类,使其根本不会生成此 id="0"?

任何帮助都会很棒。

PS 我无法更改服务器端方法,这本来是最简单的解决方案,但不幸的是这是不可能的。

谢谢

I'm trying to call a Soap Web Service, and I need to pass an Address Object to the Server. I can pass an existing address.Id to update an existing address, or if I leave the address.Id empty, it should be saved as a new Address. The Problem is that the Id is of long type, and it allways has a value of 0.

And this makes problems for the server, because even if the Id=0, the Server Side function will take the Address as Existing one, and it will start to search on the Database for an Address with Id=0. Of course there is no such address, and it throws an error. When I try to call the Web Service with WebService Studio or SoapUI, and I delete the id manually, then It works as expected, as soon as I put then it returns me an error - Address with Id=0 not found.

So the question is, how to change the webservice definitions, or the proxy classes so that it does not generates this id="0" at all?

Any Help would be great.

P.S. I cannot change the Server Side method, it would have been the easiest solution, but unfortunatelly is not possible.

Thanks

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

明月夜 2024-10-25 08:56:40

如果您使用默认的 .NET 序列化程序,您可以尝试使用 XmlIgnore 属性

如果您使用其他序列化程序,通常有一些属性来控制序列化的发生方式。

If you are using the default .NET serializers, you may try with using the XmlIgnore attribute

If you are using other serializers there are normally attributes to control how the serialization occurs.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文