1. 統合サービス層

サービスプロバイダー

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

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

各サービス層にはカスタマイズ可能な独自のインターフェースがあります。これらのプロバイダーには、適切なサブシステムとやり取りするためのサービスメソッドが含まれています。すべてのサービスプロバイダーはServiceProviderクラスから継承しなければならず、各サービスメソッドがジェネリックベースのクラスの汎用版を持つことを推奨します。

サービス方法のサンプル:

public virtual GetCartsResult GetCarts(NotNull GetCartsRequest request) { return this.RunPipeline<GetCartsRequest, GetCartsResult>(PipelineName.GetCarts, request); }

ジェネリック拡張手法の例:

public static TGetCartsResult GetCarts<TGetCartsRequest, TGetCartsResult>(NotNull this CartServiceProvider cartProvider, NotNull TGetCartsRequest request) where TGetCartsRequest : GetCartsRequest where TGetCartsResult : GetCartsResult, new() { return cartProvider.RunPipeline<GetCartsRequest, TGetCartsResult>(PipelineName.GetCarts, request); }

既存のサービスプロバイダーが新しいサービス手法を必要とする場合は、新しいサービスプロバイダーを作成するのではなく、そのプロバイダーを拡張し新メソッドを追加することを検討してください。以下は、さまざまなサブシステムおよびそれらのサービスプロバイダーの一覧です。

  • ショッピングカート

    Sitecore.Commerce.Services.Carts.CartServiceProvider

  • 命令

    Sitecore.Commerce.Services.Orders.OrderServiceProvider

  • 価格設定

    Sitecore.Commerce.Services.Prices.PricingServiceProvider

  • 製品同期

    Sitecore.Commerce.Services.Products.ProductSynchronizationProvider

  • 顧客と利用者

    Sitecore.Commerce.Services.Customers.CustomerServiceProvider

  • 在庫

    Sitecore.Commerce.Services.Inventory.InventoryServiceProvider

この記事を改善するための提案がある場合は、 お知らせください!