使用.NET向webService传double、int、DateTime 服务器得到的数据时null的问题(转http://blog.csdn.net/slimboy123/article/details/4366701)

用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;否则为 falsefalse 值指示该属性的值来自 DTD。

 备注

该属性是由实现负责的,而不是用户。如果用户更改该属性的值(即使它最后与默认/固定值具有相同的值),Specified 标志就会自动转为 true。若要重新将该属性指定为 DTD 中的默认/固定值,则用户必须删除该属性。然后,实现提供一个新属性,其 Specified 设置为 false,并具有默认/固定值(如果存在的话)。

摘要:

  1. 如果属性具有文档中的分配值,则 Specified 为 true,并且该值是分配值。
  2. 如果属性没有文档中的分配值,而具有 DTD 中的默认/固定值,则 Specified 为 false,该值是 DTD 中的默认/固定值。
  3. 否则,该属性不出现在文档的结构模型中。

使用.NET向webService传double、int、DateTime 服务器得到的数据时null的问题(转http://blog.csdn.net/slimboy123/article/details/4366701)

时间: 2024-10-02 00:03:42

使用.NET向webService传double、int、DateTime 服务器得到的数据时null的问题(转http://blog.csdn.net/slimboy123/article/details/4366701)的相关文章

文件上传的思考 (转) http://blog.csdn.net/ncafei/article/details/53401961

文件上传校验 客户端JavaScript校验(一般只校验后缀名) 一般都是在网页上写一段javascript脚本,校验上传文件的后缀名,有白名单形式也有黑名单形式. 判断方式:在浏览加载文件,但还未点击上传按钮时便弹出对话框,内容如:只允许上传.jpg/.jpeg/.png后缀名的文件,而此时并没有发送数据包. 服务端校验: 1.文件头content-type字段校验(image/gif):代码对上传文件的文件类型进行了判断,如果不是图片类型,返回错误. 2.文件内容头校验(GIF89a): 可

.net调java写的webService传过去的datetime,int等非string类型为null的问题

使用.NET向webService传double.int.DateTime 服务器得到的数据时null的问题 收藏 用C#.NET调用Java开发的WebService时,先在客户端封装的带有int属性的对象,当将该对象传到服务器端时,服务器端可以得到string类型的属性值,却不能得到int类型.double和DateTime类型的值(在服务端得到的均为null) 解决办法: VS2005封装WebService引用时,如果WebService发布的是一个基本数据类型组成的对象,则会对该对象的

安卓上传文件至PHP服务器

前两个月有幸参加一次免费培训,开发了一款小软件.发现AsyncHttpClient还真是好用. 直奔主题,安卓上传文件至PHP服务器: 1.PHP端服务器: <?php //链接数据库 include ("config/db.php"); //获取用户id $userid = $_POST['userid']; //处理上传文件 $base_path = "upload/"; $fileName=$_FILES['file']['name']; $name=e

JavaScript进阶 九 JS实现本地文件上传至阿里云服务器

JS实现本地文件上传至阿里云服务器 前言 在前面的博客< JavaScript进阶(八)JS实现图片预览并导入服务器功能>(点击查看详情)中,实现了JS将本地图片文件预览并上传至阿里云服务器的操作.这次需要实现将本地打包好的文件上传至阿里云服务器.使用前面的图片文件上传方法无法完成此操作.操作界面如下: 思路 本地与服务端传输文件的格式应该是熟悉的Base64格式.首先需要将本地文件转换为Base64格式,传输至服务端后,在服务端再将Base64格式的文件转换为原始文件. 源码解析 控制器 /

上传附件到ftp服务器

1 windows下搭建ftp服务器 https://blog.csdn.net/qq_34610293/article/details/79210539 搭建好之后浏览器输入 ftp://ip就可以看见弹出账号密码的输入框.(win10家庭版本是没有在计算机管理中显示用户组的,具体添加方法见:https://www.kafan.cn/edu/68801291.html) 2 原生上传下载的demo <dependency> <groupId>commons-net</gro

pycharm上传代码到远程服务器

本来不打算写了,可是,还是记不住 源自https://blog.csdn.net/zhangyu4863/article/details/80188207 我的是pycharm2018.1.4专业版: 设置: tools----->deloyment----->configuration,进入下图,选择加号,点击 设置项目名,和类型 输入host.port.账密,再选择工作的根目录 选择mappings标签,选择,本地路径和远程的路径 建议本地路径,选择项目路径就好,服务器路径,选择一个空文件

SpringBoot 上传文件到linux服务器 异常java.io.FileNotFoundException: /tmp/tomcat.50898……解决方案

SpringBoot 上传文件到linux服务器报错java.io.FileNotFoundException: /tmp/tomcat.50898-- 报错原因: 解决方法 java.io.IOException: java.io.FileNotFoundException: /tmp/tomcat.5089835798184465073.8081/work/Tomcat/localhost/ROOT/www/server/apache-tomcat-8.5.32/webapps/jxmsto

通过webService传文件

1,客户端将 流转换为字符串,通过webService传 2,服务器端 将字符串转换为流,保存到本地 注: 在webservice中传输的对象一定要实现序列化接口 涉及程序: 将流转为字符串: 1,将输入流转换为输出流      InputStream in = 输入流: byte[] buffer = new byte[1024]; OutStream out = new ByteAarryInputSteam(); int len = 0; while((len = in.read(buff

将本地文件上传到指定的服务器(HttpWebRequest方法)

将本地文件上传到指定的服务器(HttpWebRequest方法),通过文件流,带文件名,同文件一同上传的表单文本域及值. 1 ///<summary> 2 /// 将本地文件上传到指定的服务器(HttpWebRequest方法) 3 /// </summary> 4 /// <param name="address">文件上传到的服务器</param> 5 /// <param name="fileNamePath&quo