У меня есть веб-сервис, определенный (WSDL) и реализованный на PHP. Это относительно простые, важные биты, определяемые следующим образом:
<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 ... что я использую в качестве ассоциативного массива? Hashtable? .. Прокси-класс, созданный Visual Studio, говорит, что второй параметр на самом деле является строкой (или должен быть строкой), а не каким-либо типом коллекции ...
Довольно загадочно ...
Приложение: Я попытался получить запрос SOAP, который генерирует PHP, вот его часть, которая содержит параметр 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, что четко отображается на нем?