---
title: "値アクセスコンバータを実装してください"
slug: "implement-a-value-accessor-converter"
abstract: "Sitecore Data Exchange Frameworkでアイテムをプラグインに変換するための値アクセスコンバーターの実装方法。"
---
# 値アクセスコンバータを実装してください

値アクセサ項目の設定をプラグインに変換できるコンバーターを作成する必要があります。その後、バリューアクセサテンプレート上でコンバーターを指定して、パイプラインステップを読み取るエンドポイントを特定できます。

コンバーターを作成するには:

1.  Visual Studioで、次のクラスを追加します:
    
    using Sitecore.DataExchange.Attributes;
    using Sitecore.DataExchange.Converters.DataAccess.ValueAccessors;
    using Sitecore.DataExchange.DataAccess;
    using Sitecore.DataExchange.DataAccess.Readers;
    using Sitecore.DataExchange.DataAccess.Writers;
    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.Providers.FileSystem
    {
     SupportedIds(ArrayValueAccessorTemplateId)
     public class ArrayValueAccessorConverter : ValueAccessorConverter
     {
     public const string ArrayValueAccessorTemplateId = "ARRAY VALUE ACCESSOR TEMPLATE ID";
     public const string TemplateFieldPosition = "Position";
     public ArrayValueAccessorConverter(IItemModelRepository repository) : base(repository)
     {
     }
     protected override IValueReader GetValueReader(ItemModel source)
     {
     var reader = base.GetValueReader(source);
     if (reader == null)
     {
     var position = this.GetIntValue(source, TemplateFieldPosition);
     if (position < 0)
     {
     return null;
     }
     reader = new ArrayValueReader(position);
     }
     return reader;
     }
     protected override IValueWriter GetValueWriter(ItemModel source)
     {
     var writer = base.GetValueWriter(source);
     if (writer == null)
     {
     var position = this.GetIntValue(source, TemplateFieldPosition);
     if (position < 0)
     {
     return null;
     }
     writer = new ArrayValueWriter(position);
     }
     return writer;
     }
     }
    }
    
    > !重要ARRAY VALUE ACCESSOR TEMPLATE IDの値を、[前のステップ](https://doc.sitecore.com/xp/ja/developers/def/60/data-exchange-framework/create-a-template-for-value-accessors.html "Create a template for value accessors")で作成した値インセクターテンプレートの*Array Value Accessor*のIDと一致させる必要があります。
    
2.  プロジェクトをコンパイルします。
    
3.  Examples.DataExchange.Providers.FileSystem.dllをSitecoreサーバーにデプロイしてください。