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

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

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

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サーバーにコピーします。

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