c # перевод на PHP массив ключей - PullRequest
1 голос
/ 11 марта 2009

Я пытаюсь вызвать веб-сервис магазина PHP Magento из C #.

Как мне создать этот тип "ARRAY KEY" в C # для передачи в PHP:

call( 
    $sessionId, 
    'product_stock.update', 
    array('Sku', array('qty'=>50, 'is_in_stock'=>1))
);

Вот ссылка на magento wiki для звонка:
http://www.magentocommerce.com/wiki/doc/webservices-api/api/cataloginventory_stock_item#cataloginventory_stock_item.update

Ответы [ 3 ]

3 голосов
/ 17 марта 2009

Мы потратили немало времени на работу с API в C #, в основном из-за отсутствия примеров. В конце концов мы все выяснили и создали целую библиотеку объектов для .net, которая включает в себя все объекты и методы API. Он также включает примеры для каждого объекта и метода.

Мы опубликовали нашу библиотеку под лицензией MIT X11, и вы можете прочитать больше об этом и скачать исходный код здесь:

.NET C # Библиотека объектов для API XML-RPC Magento

1 голос
/ 11 марта 2009

Это немного проще, чем вы думали.

Эта функция: $ proxy-> call ($ sessionId, 'product_stock.update', массив ('Sku', массив ('qty' => 50, 'is_in_stock' => 1)));

передает XML , используя формат, указанный в следующих документах:

http://www.w3.org/TR/soap11/

http://www.w3.org/TR/soap12/

http://www.w3.org/TR/wsdl/

И вполне возможно, что формат XML выглядит так:

Sku ...

Так что рассматривайте эти странные массивы как источник данных для XML

0 голосов
/ 29 апреля 2009

Я довольно усердно играл с magento api, используя мыло (создание продукта), и не смог заставить его работать с XMLRPC или SOAP из коробки.

Я использовал XAMPP для установки базового вызова Product.Create с использованием PHP и получил его для сохранения конверта.

Затем я взял этот конверт в .NET и пересоздал его с сообщением XML / HTTP.

Я не смог найти ни одного универсального объекта, который позволил бы мне создать такую ​​структуру, как массив PHP Associative. Единственное, что, вероятно, представляло бы это, будет Old HashTable с некоторыми из подключей, содержащих HashTables в качестве значения в древовидной структуре.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...