自动映射:重用已创建的地图

时间:2009-12-24 13:53:14

标签: c# automapper

例如,如果我有这样的事情:

Mapper.CreateMap<Foo,FooDto>()
   .ForMemeber( ...;

我有

class Bar
{
   public Foo Foo { get; set; }
}

class BarDto
{
   public FooDto Foo { get; set; }
}

比我必须再次重复Foo到FooDto的映射逻辑:

Mapper.CreateMap<Bar,BarDto>()
      .ForMemeber(...

目前我在ValueResolver中使用Mapper.Map,但我认为可能有更好的方法

1 个答案:

答案 0 :(得分:2)

您不必重新执行Foo / FooDto映射逻辑。每当AutoMapper找到Foo / FooDto对时,无论它是在值,字典,集合,子成员还是其他任何数组中,都将使用Foo / FooDto配置。 AutoMapper不关心在哪里找到类型对。