---
title: "基本アイテムモデルコンバータ"
slug: "base-item-model-converter"
abstract: "Sitecore Data Exchange Frameworkにおける基本アイテムモデルコンバータークラスの紹介。"
---
# 基本アイテムモデルコンバータ

このクラスは、Data Exchange Frameworkモデルオブジェクト上で設定されたSitecoreアイテムの読み取り値を簡素化するメソッドを提供します。

種類

Sitecore.DataExchange.Converters.BaseItemModelConverter<TTo>,Sitecore.DataExchange

## 例

例えば、Sitecoreのテンプレートが人物を表す場合を考えてみましょう。テンプレートには以下のフィールドがあります:

フィールド名

フィールドタイプ

**名称**

単行テキスト

**メール**

単行テキスト

**生年月日**

日付

Data Exchange Framework内で、このテンプレートに基づくアイテムを以下のモデルで公開したいと考えています:

public class Person
{
 public string Name { get; set; }
 public string Email { get; set; }
 public DateTime DateOfBirth { get; set; }
}

以下のクラスは、基本アイテムモデルコンバーターを用いて、前のテンプレートに基づいてSitecoreアイテムから前のモデルのインスタンスを作成します。

using Sitecore.DataExchange.Attributes;
using Sitecore.DataExchange.Repositories;
using Sitecore.Services.Core.Model;

namespace Examples
{
 SupportedIds(PersonTemplateId)
 public class PersonConverter : BaseItemModelConverter<Person>
 {
 public const string PersonTemplateId = "PERSON TEMPLATE ID";
 public PersonConverter(IItemModelRepository repository) : base(repository)
 {
 }
 protected override ConvertResult<Person> ConvertSupportedItem(ItemModel source)
 {
 if (source == null)
 {
 return ConvertResult<Person>.NegativeResult();
 }
 var person = new Person
 {
 Name = base.GetStringValue(source, "Name"),
 Email = base.GetStringValue(source, "Email"),
 DateOfBirth = base.GetDateTimeValue(source, "DOB")
 }
 return ConvertResult<Person>.PositiveResult(person);
 }
 }
}

> !注SupportedIds属性は検証目的で使用されます。これにより、コンバーターは指定されたテンプレートに基づくアイテムでのみ使用可能になります。