webservice如何修改wsdl
我用.net写了一个webservice服务:其中有个函数如下:
[WebMethod(Description = "儿童信息查询")]
public String queryChildrenByCodes(String user, String password, String[] codes)
{
}
第三个字段是字符串数组,.net自动生成的wsdl解析为:
<s:element name="queryChildrenByCodes">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="user" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="password" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="codes" type="tns:ArrayOfString" />
</s:sequence>
</s:complexType>
</s:element>
<s:complexType name="ArrayOfString">
<s:sequence>
<s:element minOccurs="0" maxOccurs="unbounded" name="string" nillable="true" type="s:string" />
</s:sequence>
</s:complexType>
<s:element name="queryChildrenByCodesResponse">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="queryChildrenByCodesResult" type="s:string" />
</s:sequence>
</s:complexType>
</s:element>
而客户端那边要求必须为:
<s:element name="queryChildrenByCodes">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="user" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="password" type="s:string" />
<s:element minOccurs="0" maxOccurs="unbounded" name="codes" type="s:string" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="queryChildrenByCodesResponse">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="queryChildrenByCodesResult" type="s:string" />
</s:sequence>
</s:complexType>
</s:element>
也就是红色部分必须相同,绿色部分删除,不然客户端那边解析不了,因为我们要做接口,客户端那边已经使用,不能修改,只能改我们自己写的客户端,但接触webservice不多,不知道怎么改,还望高手多多指教。我用的是vs2008。