TL;DR

  • リスト、シーケンス、セットは、DTO ではどのシリアライズフォーマットでも扱える配列で表現する。
  • マップなどの複雑なコレクションをどう変換するかは、シリアライズフォーマットによる。

内容

ドメイン型を DTO に変換する方法の 1 つである。

リスト、シーケンス、セットは、すべてのシリアライズフォーマットが対応している配列で表現する。

// ドメイン
type Order =
    { ...
      Lines: OrderLine list }
 
// DTO
type OrderDto =
    { ...
      Lines: OrderLineDto[] }

マップなどの複雑なコレクションをどう変換するかは、シリアライズフォーマットによって決まる。たとえば JSON はキーと値の組を扱えるので、マップを直接シリアライズできる。

キーワード