使用Ebay SDK API:ExcludeShipToLocation.Add(“CN”)会导致:“对象引用未设置为对

本文关键字:对象引用 设置 CN API SDK Ebay ExcludeShipToLocation Add 使用 | 更新日期: 2023-09-27 17:59:26

我一直在试图找出如何使用Ebay API Csharp排除某些位置,但到目前为止,经过如此多的代码变体和深度搜索,我还没有解决这个问题。

我需要帮助排除"中国"。

item.ShippingDetails.ExcludeShipToLocation = new StringCollection();

但当程序碰到这行代码时,就会出现以下错误:

"对象引用未设置为对象的实例"

如果你想在这里看到完整的代码,它是:

using eBay.Service.Call;
using eBay.Service.Core.Sdk;
using eBay.Service.Core.Soap;
using eBay.Service.Util;
using Samples.Helper;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ebayapiex3
{
    class Program
    {
        static void Main(string[] args)
        {
            ApiContext context = AppSettingHelper.GetApiContext();
            context.ApiLogManager = new ApiLogManager();
            context.ApiLogManager.ApiLoggerList.Add(new FileLogger("log.txt", true, true, true));
            context.ApiLogManager.EnableLogging = true;
            context.Site = SiteCodeType.US;
            ReviseFixedPriceItemCall reviseFP = new ReviseFixedPriceItemCall(context);
            ItemType item = new ItemType();
            item.ItemID = "************";
            item.Title = "TITLE HAS BEEN CHANGED";
            item.Quantity = 99;
            item.StartPrice = new AmountType();
            item.StartPrice.Value = 795.76;
            item.ShipToLocations = new StringCollection();
            item.ShipToLocations.Add("US");
            item.ShipToLocations.Add("AU");
            item.ShippingDetails.ExcludeShipToLocation = new StringCollection();
            item.ShippingDetails.ExcludeShipToLocation.Add("CN");
            reviseFP.Item = item;
            reviseFP.Execute();
            Console.WriteLine(reviseFP.ApiResponse.Ack + " SKU " + reviseFP.SKU);
        }
    }
}

使用Ebay SDK API:ExcludeShipToLocation.Add(“CN”)会导致:“对象引用未设置为对

在分配给其成员之前,您需要创建item.ShippingDetails

item.ShippingDetails = new ShippingDetailsType();
item.ShippingDetails.ExcludeShipToLocation = new StringCollection();
item.ShippingDetails.ExcludeShipToLocation.Add("CN");