android调用C# 服务返回对象使用方法说明
来源:互联网 发布:知乎 脱发 编辑:程序博客网 时间:2024/05/13 17:59
SoapObject类是一个主要用于调用WCF服务的类,其对象可以作为请求,发送到WCF服务器;也可以用于存储响应信息。
之前一篇博客提到,获取WCF服务器的响应以后,返回的是一个SoapObject类型的对象。通过调试发现,该对象本身是一个存储了一套HTML语句的文本。而SoapObject本身提供了对这套HTML语句的解析。
因此,我们对SoapObject的解析,其实可以理解为对HTML语句的解析。
本文以String类型为获取目标(即从WCF服务器提供方法返回的是String类型的数据)
首先我们把返回的String类型分成三种情况:单一个String, 一个String的数组,一个String的二维数组
①对于单一个String,我们在编写调用WCF服务的方法的时候,envelope.bodyIn就不能强制转换成SoapObject,否则会在运行时提示类型转换错误。
此时envelope.bodyIn可以直接作为一个Object对象返回,也可以调用其toString()方法,即可获得想要的数据。
②对于一个String的一维数组,我们要把envelope.bodyIn强制转换成SoapObject,获取一个SoapObject类型的对象soap。
此时,只要调用SoapObject的getProperty()方法即可获得想要的数据,参数对应一维数组下标。
例如:要从返回一维数组获取第一个元素,只要调用soap.setProperty(0)即可。
③对于一个String的二维数组。
此时。通过调试发现,getProgerty()方法返回的是另一个SoapObject对象,因此我们可以把envelope.bodyIn的SoapObject对象想象成一个二维数组,
其中getProperty()方法是返回一维数组的某一行,参数是对应行下标,再通过调用这一个SoapObject的getProperty()方法,即可获取某一元素。
例如:要获取String[0][1]元素,只要从envelope.bodyIn的SoapObject调用两次getProperty()方法:soap.getProperty(0).getProperty(1)
可见,只要把SoapObject抽象成一个数组,就不难去理解和解析其中的数据
之前一篇博客提到,获取WCF服务器的响应以后,返回的是一个SoapObject类型的对象。通过调试发现,该对象本身是一个存储了一套HTML语句的文本。而SoapObject本身提供了对这套HTML语句的解析。
因此,我们对SoapObject的解析,其实可以理解为对HTML语句的解析。
本文以String类型为获取目标(即从WCF服务器提供方法返回的是String类型的数据)
首先我们把返回的String类型分成三种情况:单一个String, 一个String的数组,一个String的二维数组
①对于单一个String,我们在编写调用WCF服务的方法的时候,envelope.bodyIn就不能强制转换成SoapObject,否则会在运行时提示类型转换错误。
此时envelope.bodyIn可以直接作为一个Object对象返回,也可以调用其toString()方法,即可获得想要的数据。
②对于一个String的一维数组,我们要把envelope.bodyIn强制转换成SoapObject,获取一个SoapObject类型的对象soap。
此时,只要调用SoapObject的getProperty()方法即可获得想要的数据,参数对应一维数组下标。
例如:要从返回一维数组获取第一个元素,只要调用soap.setProperty(0)即可。
③对于一个String的二维数组。
此时。通过调试发现,getProgerty()方法返回的是另一个SoapObject对象,因此我们可以把envelope.bodyIn的SoapObject对象想象成一个二维数组,
其中getProperty()方法是返回一维数组的某一行,参数是对应行下标,再通过调用这一个SoapObject的getProperty()方法,即可获取某一元素。
例如:要获取String[0][1]元素,只要从envelope.bodyIn的SoapObject调用两次getProperty()方法:soap.getProperty(0).getProperty(1)
可见,只要把SoapObject抽象成一个数组,就不难去理解和解析其中的数据
0 0
- android调用C# 服务返回对象使用方法说明
- 调用RESTFul服务,用Gson序列化返回对象
- 返回对象的说明
- Android调用后台服务c# Webservice(源码)
- C#中的类SqlCommand对象使用方法ExecuteNonQuery()调用SQLServer存储过程时,存储过程执行成功,数据发生改变,但是返回-1
- Android服务使用方法
- 有关返回对象的说明
- 有关返回对象的说明
- 有关返回对象的说明
- C#调用命令行@服务
- C#调用wcf服务
- js调用Android使用方法
- android NDK 使用方法及说明
- android NDK 使用方法及说明
- xShell终端调用VBS脚本 使用方法说明
- android返回键调用
- Android调用返回键
- C#调用带有SOAPHeader说明
- 防止表单重复提交
- NSClient - ERROR: Invalid password
- 办学历证书,办文凭,QQ微信2824.89843,官网可查,满意付款,办毕业证,办成绩单,办毕业证成绩单,办大学文凭 哪里可以办学历证书,网上办学历可信吗
- Spring
- java读取properties配置文件,并解决中文乱码
- android调用C# 服务返回对象使用方法说明
- allegro转pads(使用allegro 16.3和pads9.3.1)
- 社説 20150612 日本の製造業 大胆に変革進めて巻き返そう
- IOS开发--枚举类型使用
- SAP--关于SAP的税的概览
- zepto.js和jquery.js函数对比
- json和jsonp的联系和区别(转载)
- ExtJs 入门教程五[文本框:TextField]
- java 常见问题(2)HashMap 基础原理