我有一个Web服务,它是用PHP定义(WSDL)和实现的。这个比较简单,重要的部分定义如下:
<message name='registerAccountRequest'>
<part name='key' type='xsd:string'/> <!-- key -->
<part name='data' type='xsd:array'/> <!-- account data -->
</message>
<message name='registerAccountResponse'>
<part name='success' type='xsd:string' />
</message>
请注意,数据参数是一个数组,实际上是一个关联数组。 PHP客户端可与此工作得很好,调用服务并获得正确的响应。
现在,当我尝试使用ASP.NET消耗此服务时...我应该使用什么作为关联数组?哈希表?..由Visual Studio创建的代理类说第二个参数实际上是一个字符串(或应该是字符串),而不是任何类型的集合...
相当令人困惑...
附言: 我尝试获取PHP生成的SOAP请求,这里是携带“ data”参数的一部分:
...<data xsi:type="ns2:Map">
<item>
<key xsi:type="xsd:string">company_data</key>
<value xsi:type="ns2:Map">
<item>
<key xsi:type="xsd:string">name</key>
<value xsi:type="xsd:string">Test company name</value>
</item>
<item>
<key xsi:type="xsd:string">slogan</key>
<value xsi:type="xsd:string">Test company slogan</value>
</item>
那么,ns2:Map是什么数据类型?ASP.NET是否支持将其映射到干净的内容上?