使用.NET向webService传double、int、DateTime类型数据, 在发送包的XML中没有提交数据到 服务器
2013-06-05 11:16
411 查看
用C#.NET调用Java开发的WebService时,先在客户端封装的带有int属性的对象,当将该对象传到服务器端时,服务器端可以得到string类型的属性值,却不能得到int类型、double和DateTime类型的值(在服务端得到的均为null)
解决办法:
VS2005封装WebService引用时,如果WebService发布的是一个基本数据类型组成的对象,则会对该对象的非string属性同时生成两个属性,一般是这样的"属性××"、"属性××Specified"。而"属性名Specified"是一个bool类型,只有这个属性被设置成true时,"属性××"的值才会被序列化成xml传递。
同样的道理,用.NET提供WebService给JAVA调用时,如果是一个基本数据类型组成的对象,则会对该对象的非string属性同时生成两个属性,一般是这样的"属性××"、"属性××Specified"。如果不将“属性××Specified”设置为true的话,服务端得到的数据将是null。解决办法就是把“属性××Specified”设置为true或者把“属性××Specified”删掉。
资料:http://msdn.microsoft.com/zh-cn/library/system.xml.xmlattribute.specified(VS.80).aspx
.NET Framework 类库
XmlAttribute.Specified 属性
获取一个值,该值指示是否显式设置了属性值。
命名空间:System.Xml
程序集:System.Xml(在 system.xml.dll 中)
属性值
如果在原始实例文档中显式地为该属性给定一个值,则为 true;否则为 false。false 值指示该属性的值来自 DTD。备注
该属性是由实现负责的,而不是用户。如果用户更改该属性的值(即使它最后与默认/固定值具有相同的值),Specified 标志就会自动转为 true。若要重新将该属性指定为 DTD 中的默认/固定值,则用户必须删除该属性。然后,实现提供一个新属性,其 Specified 设置为 false,并具有默认/固定值(如果存在的话)。
摘要:
如果属性具有文档中的分配值,则 Specified 为 true,并且该值是分配值。
如果属性没有文档中的分配值,而具有 DTD 中的默认/固定值,则 Specified 为 false,该值是 DTD 中的默认/固定值。
否则,该属性不出现在文档的结构模型中。
引用 :http://blog.csdn.net/slimboy123/article/details/4366701
相关文章推荐
- 使用.NET向webService传double、int、DateTime 服务器得到的数据时null的问题
- 使用.NET向webService传double、int、DateTime 服务器得到的数据时null的问题
- 使用.NET向webService传double、int、DateTime 服务器得到的数据时null的问题
- 使用.NET向webService传double、int、DateTime 服务器得到的数据时null的问题(转http://blog.csdn.net/slimboy123/article/details/4366701)
- Android之通过向WebService服务器发送XML数据获取相关服务
- Android--通过Http协议向web服务器发送XML数据和调用webService
- Android--通过Http协议向web服务器发送XML数据和调用webService
- 不允许从数据类型 datetime 到数据类型 int 的隐性转换(表 'tempdb.dbo.#3884BFB0',列 'IsNominate')。请使用 CONVERT
- Android使用webService(发送xml数据的方式,不使用jar包)
- C/C++——求下面数据类型的最大值和最小值: char, short, int, long, float, double, long double和numeric_limits使用
- .net调java写的webService传过去的datetime,int等非string类型为null的问题
- Ajax---发送参数:使用JSON替代XML向服务器发送数据
- Qt 基本数据类型转换(int,float,double,datetime,string)
- 通过webservice提交xml数据以及soap协议的使用
- Android 向服务器发送XML数据及调用webservice
- json 解析double类型多出几位小数,利用NSDecimalNumber修复 , 服务器返回的数据,用数据类型接收(int,NSNumber)?
- net控件中数据导到Excel的格式 首先,我们了解一下excel从web页面上导出的原理。当我们把这些数据发送到客户端时,我们想让客户端程序(浏览器)以excel的格式读取它,所以把mime类型设为:application/vnd.ms-excel,当excel读取文件时会以每个cell的格式呈现数据,如果cell没有规定的格式,则excel会以默认的格式去呈现该cell的数据。这样就给我们提供了自定义数据格式的空间,当然我们必须使用excel支持的格式。下面就列出常用的一些格式: 1) 文本
- Android之通过向WebService服务器发送XML数据获取相关服务
- Okhttp使用post向服务器提交 sring[] 类型的数据
- Android之通过向WebService服务器发送XML数据获取相关服务