カスタム値マッピングセットの統合

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

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

最後のステップは、カスタム値マッピングセットをData Exchange Frameworkに統合することです。

データ同期プロセスを構成するときは、新しいテナントを作成するときにカスタム値マッピング セットを使用します。既存のテナントの場合は、現在使用されている値マッピング セットをカスタム値マッピング セットに置き換えます。

カスタムテンプレートの設定

カスタムコンバータとカスタム値マッピングセットを使用するようにテンプレートを設定するには:

  1. コンテンツ エディターで、/sitecore/templates/Data Exchange/Framework/Data Access/Mapping/Custom Value Mapping Set/__Standard Valuesに移動します。

  2. ConfigureタブのData Exchange Frameworkセクションで、次のフィールド値を設定します。

    価値

    Converter Type

    Examples.DataExchange.CustomMappingSetConverter,Examples.DataExchange

  3. メニュー リボンで、CONFIGUREタブをクリックします。

    Configure tab in menu ribbon
  4. メニューで、「 Assign」をクリックします。

    Assign option on menu ribbon
  5. Insert Optionsダイアログの左側のツリーで、Templates/Data Exchange/Framework/Data Access/Mapping/Custom Value Mapping Setに移動します。右矢印 (Arrow pointing right) をクリックして、セットをSelectedリストに追加します。

    Insert Options dialog
  6. OK」をクリックします。

カスタム値マッピングセットのコンバーターを実装する

Data Exchange Frameworkでは、Sitecoreアイテムは設定にのみ使用されます。データ同期プロセスが実行されると、設定はSitecoreアイテムから読み取られ、フレームワーク コンポーネントに変換されます。

テンプレート アイテムIDを取得する

コンバーターをカスタム値マッピング セット テンプレートにリンクするには、テンプレート項目IDを見つけてコピーする必要があります。

これを行うには、次の手順を実行します。

  1. コンテンツ エディターで、/sitecore/templates/Data Exchange/Framework/Data Access/Mapping/Custom Value Mapping Setに移動します。

  2. Contentタブをクリックします。

  3. Quick Infoセクションで、Item ID値をコピーします。

    Quick Info section on the Content tab, showing the Item ID value.

カスタムコンバータクラスの実装

カスタム値マッピング セットを表すSitecoreアイテムをカスタム値マッピング セット タイプのインスタンスに変換するには、カスタム コンバーターが必要です。

クラスを実装するには、次のようにします。

  • Visual Studioで、次のクラスを追加します。

    using Sitecore.DataExchange;
    using Sitecore.DataExchange.Attributes;
    using Sitecore.DataExchange.Converters;
    using Sitecore.DataExchange.Repositories;
    using Sitecore.Services.Core.Model;
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    
    namespace Examples.DataExchange
    {
        [SupportedIds("{00000000-0000-0000-0000-000000000000}")]
        public class CustomMappingSetConverter : BaseItemModelConverter<CustomMappingSet>
        {
            public CustomMappingSetConverter(IItemModelRepository repository) : base(repository)
            {
            }
            private static CustomMappingSet _instance = new CustomMappingSet();
            protected override ConvertResult<CustomMappingSet> ConvertSupportedItem(ItemModel source)
            {
                return ConvertResult<CustomMappingSet>.PositiveResult(_instance);
            }
        }
    }
メモ

属性SupportedIdsでは、前の手順でコピーしたテンプレート アイテムIDを使用します。

カスタムコンポーネントのデプロイ

コードをSitecoreサーバーにデプロイするには:

  1. Visual Studioプロジェクトをビルドします。

  2. Examples.DataExchange.dllファイルをSitecoreサーバーにコピーします。

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