.net 调用Java WebService double为Null
小虫12 2016-05-10 06:47:15 今天用.net 开发时遇到了一个问题,调用java 写的web service服务 ,我先用VS2013 开发人员命令提示生成的.net代理类,然后调用服务方法,但是服务端获取double类型的字段一直是Null,在网上查了好多资料,试了好多次也没解决这个问题,谁在开发的时候遇见这个问题帮忙解决一下。
网上参考资料:
VS2005封装WebService引用时,如果WebService发布的是一个基本数据类型组成的对象,则会对该对象的非string属性同时生成两个属性,一般是这样的"属性××"、"属性××Specified"。而"属性名Specified"是一个bool类型,只有这个属性被设置成true时,"属性××"的值才会被序列化成xml传递。
同样的道理,用.NET提供WebService给JAVA调用时,如果是一个基本数据类型组成的对象,则会对该对象的非string属性同时生成两个属性,一般是这样的"属性××"、"属性××Specified"。如果不将“属性××Specified”设置为true的话,服务端得到的数据将是null。解决办法就是把“属性××Specified”设置为true或者把“属性××Specified”删掉。