Есть ли (С#) библиотека, которая будет создавать каналы для Amazon Marketplace Web Services?

Кто-нибудь знает библиотеку там (желательно на С#), которая будет принимать классы и генерировать XML или плоские файлы, подходящие для фидов в Amazon Marketplace Web Services?

Другими словами, я хотел бы сделать что-то вроде этого:

        var feed = new AmazonProductFeed();
        var list = new AmazonProductList();

        var product1 = new AmazonProduct();
        product1.Name = "Product 1";
        list.Add(product1);

        var product2 = new AmazonProduct();
        product2.Name = "Product 2";
        list.Add(product2);

        feed.Products = list;
        // spits out XML compliant with Amazon schema
        Console.Write(feed.ToXml());

Похоже, что единственным кодом, который предоставляет Amazon, является оболочка для самого веб-сервиса и транспортной утилиты на основе каталогов (AMTU).

Ответы

Ответ 1

.NET Framework Schema Definition Tool можно использовать для создания классов из любого XSD и может использоваться совместно с XML-сериализатором для выполнения что описано.

Руководство по использованию Amazon для XML (SOA-GuideToXML.pdf) не содержит ссылок на правильные XSD. Ссылки несовместимы с XSD, которые перепечатаны в документе. Моя прежняя ссылка для исправления XSD больше не действительна. Мое лучшее предположение, что они могут быть найдены здесь (требуется вход в систему Central Central).

Эта (очень длинная) команда будет генерировать все необходимые классы, насколько я знаю. Обратите внимание, что вам нужно будет внести некоторые незначительные изменения в сгенерированный файл. Я не помню, как это работает, но мне нужно было изменить некоторые 2-D массивы на 1-D массивы ([] [] на []) или наоборот. Я помню места, где я должен был сделать эти изменения довольно очевидными:

xsd xsd\amzn-base.xsd xsd\amzn-envelope.xsd xsd\amzn-header.xsd xsd\AttributeGroups.xsd xsd\AutoAccessory.xsd xsd\Beauty.xsd xsd\CameraPhoto.xsd xsd\CatPIL.xsd xsd\CE.xsd xsd\ClothingAccessories.xsd xsd\Customer.xsd xsd\CustomerAddress.xsd xsd\FoodAndBeverages.xsd xsd\FulfillmentCenter.xsd xsd\FulfillmentOrderCancellationRequest.xsd xsd\FulfillmentOrderRequest.xsd xsd\Gourmet.xsd xsd\Health.xsd xsd\Home.xsd xsd\HomeImprovement.xsd xsd\Image.xsd xsd\Inventory.xsd xsd\Item.xsd xsd\Jewelry.xsd xsd\Lighting.xsd xsd\Listings.xsd xsd\ListingSummary.xsd xsd\Loyalty.xsd xsd\MerchantListingsReport.xsd xsd\Miscellaneous.xsd xsd\MultiChannelOrderReport.xsd xsd\Music.xsd xsd\MusicalInstruments.xsd xsd\NavigationReport.xsd xsd\Offer.xsd xsd\Office.xsd xsd\OrderAcknowledgement.xsd xsd\OrderAdjustment.xsd xsd\OrderFulfillment.xsd xsd\OrderNotificationReport.xsd xsd\OrderReport.xsd xsd\Override.xsd xsd\PaymentMethod.xsd xsd\PetSupplies.xsd xsd\Price.xsd xsd\ProcessingReport.xsd xsd\Product.xsd xsd\ProductAttributes.xsd xsd\ProductClothing.xsd xsd\ProductImage.xsd xsd\Relationship.xsd xsd\ReverseFeed.xsd xsd\SettlementReport.xsd xsd\Sports.xsd xsd\Store.xsd xsd\SWVG.xsd xsd\TiresAndWheels.xsd xsd\Tools.xsd xsd\ToysBaby.xsd xsd\TypeDefinitions.xsd xsd\Video.xsd xsd\WebstoreItem.xsd xsd\Wireless.xsd  /c /n:WebLinc.Services.Amazon.Marketplace > output.txt 2>&1
pause