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

Asmx Web服务调用-自动生成的属性,asmx,Asmx,我试图调用一个soapweb服务,我需要向服务器传递一个Address对象。我可以传递现有地址.Id以更新现有地址,或者如果我将地址.Id保留为空,则应将其另存为新地址。问题是Id是长类型的,并且它的值始终为0 这给服务器带来了问题,因为即使Id=0,服务器端函数也会将地址作为现有地址,并开始在数据库中搜索Id=0的地址。当然没有这样的地址,它会抛出一个错误。当我尝试使用WebService Studio或SoapUI调用Web服务,并手动删除id时,它会按预期工作,一旦我输入,它就会返回一个错

我试图调用一个soapweb服务,我需要向服务器传递一个Address对象。我可以传递现有地址.Id以更新现有地址,或者如果我将地址.Id保留为空,则应将其另存为新地址。问题是Id是长类型的,并且它的值始终为0

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

所以问题是,如何更改webservice定义或代理类,使其根本不生成此id=“0”

任何帮助都会很好

另外,我不能改变服务器端的方法,这本来是最简单的解决方案,但不幸的是这是不可能的


谢谢

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

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