1. コマースの基礎

配送情報を追加する

Version:
日本語翻訳に関する免責事項

このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。

サービスメソッドを使用するための開発者タスクAddShippingInfo.

AddShippingInfoは、既存のカートに配送情報を追加するために使用されます。

Visual Studioソリューションのセットアップで、次の操作を行います。

  1. Sitecore.Commerce.Connect.CommerceServerとSitecore.Commerce.dllを参照します。

  2. このサービス メソッドを使用するソリューション内のクラスを選択します。

  3. 次のコードを貼り付けて、サービスメソッドを使用します。

    CartServiceProvider provider = new CartServiceProvider();             
    // You should get a real user id.            
    string userId = Guid.NewGuid().ToString("B");
    string anonymousUserId = Guid.NewGuid().ToString("B");             
    var loadRequest = new LoadCartByNameRequest("Website", "MyBasket", userId);            
    var loadResult = provider.LoadCart(loadRequest);             
    CommerceCart cart = loadResult.Cart as CommerceCart;             
    // Add the party (address) information.            
    CommerceParty party = new CommerceParty()            
    {                
    ExternalId = Guid.NewGuid().ToString("B"),                 
    Name = "MyFirstAddress",                
    Address1 = "Address 1 field",                
    Address2 = "Address 2 field",                
    City = "City field",                
    Company = "Company field",                
    Country = "Country field",                 
    CountryCode = "CND",               
    Email = "[email protected]",                
    EveningPhoneNumber = "111 111-1111",                
    FaxNumber = "222 222-2222",                
    FirstName = "First name field",                
    LastName = "Last name field",                
    PhoneNumber = "333 333-3333",                
    RegionCode = "01",                
    RegionName = "Region field",                
    State = "State field",                
    ZipPostalCode = "HOH OHO"            
    };             
    AddPartiesRequest request = new AddPartiesRequest(cart, new List<Party> { party });
    var result = provider.AddParties(request);             
    party = result.Parties.ElementAt(0) as CommerceParty;            
    cart = result.Cart as CommerceCart;             
    // Get the shipping methods            
    CommerceOrderServiceProvider orderProvider = new CommerceOrderServiceProvider();             
    GetShippingMethodsRequest shippingMethodsRequest = new GetShippingMethodsRequest("en-US");            
    var shippingMethodsResult =  orderProvider.GetShippingMethods(shippingMethodsRequest);             
    CommerceShippingMethod shippingMethod = shippingMethodsResult.ShippingMethods.ElementAt(0) as CommerceShippingMethod;             
    ShippingInfo shippingInfo = new ShippingInfo() { ShippingMethodID = shippingMethod.ExternalId, PartyID = party.ExternalId};            
     List<string> lineItemIdList = new List<string>();             
    // Add all cart lines to theshipping info.            
    foreach (CommerceCartLine lineItem in cart.Lines)            
    {               
            lineItemIdList.Add(lineItem.ExternalCartLineId);            
    }             
    shippingInfo.LineIDs =lineItemIdList;             
    AddShippingInfoRequest shippingInfoRequest = new AddShippingInfoRequest(cart, new List<ShippingInfo> { shippingInfo});                   
    provider.AddShippingInfo(shippingInfoRequest);
この記事を改善するための提案がある場合は、 お知らせください!