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