У меня есть пользовательскую библиотеку XML RPC Я разработанный в C#, глядя на мини-спецификации на этом сайте:XML RPC Эквивалент словаря
http://xmlrpc.scripting.com/spec.html
Он не имеет каких-либо объяснений того, как сериализовать словарь скаляров для XML. К счастью для меня, до сих пор, мое клиентское приложение .NET, написанное на C#, не нужно было отправлять словарь в качестве параметра метода. Но сейчас.
Сервер, на который я звоню, также имеет SOAP-клиент для разработчиков PHP. Я использовал этот SOAP-клиент для вызова указанного метода на сервере (тот, который нуждается в словаре), просто чтобы увидеть полезную нагрузку XML, чтобы я мог имитировать его.
Однако, поскольку он встроен в конверт SOAP, я предполагаю, что он будет немного отличаться от того, что мне нужно было бы отправить, если бы я использовал простой XML RPC, а не SOAP.
Я хочу отправить Dictionary<int, int>
. И вот что содержит конверт SOAP для словарной части.
<item xsi:type="ns2:Map">
<item>
<key xsi:type="xsd:int">609</key>
<value xsi:type="xsd:int">1</value>
</item>
</item>
Итак, я действительно ищу эквивалент RPC XML.
Теперь я вижу, что вы пытались сказать. Я думаю, вы предполагаете, что я использую 'XmlSerializer' в пространстве имен' System.Xml', потому что у него тоже есть проблемы с сериализацией словарей. Не я. Я использую простой парсер, который я написал себе, чтобы читать узлы XML и простой «TextWriter» для создания узлов XML RPC из словаря, который указан в ссылке, о которой я упоминал. –