Существует ли библиотека (C #), которая будет создавать каналы для веб-служб Amazon Marketplace? - PullRequest
13 голосов
/ 23 апреля 2010

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

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

        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's schema
        Console.Write(feed.ToXml());

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

1 Ответ

7 голосов
/ 23 апреля 2010

Инструмент определения .NET XML может использоваться для генерации классов из любого XSD и может использоваться вместе с XML-сериализатором для выполнения описанного.

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

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

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
...