1

次のクラス階層があると仮定しましょう

class DtoBaseClass
{ 
     public string BaseProperty {get; set;}
}

class A1 : DtoBaseClass
{ 
     public string SomeProperty {get; set;}
}

class A2 : A
{ 
     public string AnotherProperty {get; set;}
}

class DomainClass
{ 
     public string BaseProperty {get; set;}
}

class B1 : DomainClass
{ 
     public string SomeProperty {get; set;}
}

class B2 : DomainClass
{ 
     public string AnotherProperty {get; set;}
}

また、A1とA2のインスタンスを実際に含むDtoBaseClassの配列を返すサービスがあります。この配列をDomainClassインスタンスの配列にマップし、B1 <-> A1、B2 <-> B1間の関係を保存するにはどうすればよいですか?

デフォルトの構成では、DomainClassの配列を取得し、派生クラスのすべてのプロパティを失います。

私はマッピングにこのコードを使用します:

var dtoToDomainMapper =
ObjectMapperManager.DefaultInstance.GetMapper<DtoClasss[], DomainClass>();

var dtoObjects = externalService.GetObjects();
return dtoToDomainMapper.Map(dtoObjects);
4

0 に答える 0