请问如何通过一个url如:xxx.asmx获取该服务提供的所有方法名称,我需要加载到下拉列表中,然后根据下拉列表的选中值(服务方法名称)获取调用该服务方法需要输入的所有参数和返回值的类型?
webservice
------解决方案--------------------
这个简单,如果你懂soap协议的话。
一般web service会提供一个调用标准的url,也就是你添加web引用的地址。
比如这个:
http://www.webxml.com.cn/webservices/weatherwebservice.asmx?WSDL
我贴一段:
<s:element name="getSupportProvince">
<s:complexType/>
</s:element>
<s:element name="getSupportProvinceResponse">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="getSupportProvinceResult" type="tns:ArrayOfString"/>
</s:sequence>
</s:complexType>
</s:element>
它定义了getSupportProvince方法,它的返回值是getSupportProvinceResponse类型。
进一步的,getSupportProvinceResponse包含getSupportProvinceResult参数,这个参数的类型是tns:ArrayOfString
------解决方案--------------------
你只需要一些简单的读取xml的知识就可以枚举出一个web服务地址提供了哪些服务。它们的参数是什么。
------解决方案--------------------
webclient.download