Ben tanımlanan bir web hizmeti, (WSDL) ve PHP uygulanmaktadır. Bu da, aşağıdaki gibi tanımlanmıştır, nispeten basit, önemli bittir:
<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>
Note that data parameter is an array, in fact it is an associative array. PHP client works beautifully with this, calling service and getting proper response.
ASP.NET ile bu hizmeti tüketmeye çalışın Şimdi, ... ne bir ilişkisel dizi olarak kullanabilirim? Hashtable? .. Visual Studio tarafından oluşturulan Proxy sınıfı ikinci parametre aslında bir dize (veya dize olmalı) değil, koleksiyon herhangi bir tür olduğunu söylüyor ...
Oldukça şaşırtıcı ...
Addendum: I tried grabbing SOAP request that PHP generates, here is a part of it that carries 'data' parameter:
...<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>
... So what data type that ns2:Map is? Is there something that ASP.NET supports that maps onto it cleanly?