I am using auto mapper to map multiple objects (db class into ui objects).
Map 1:
Mapper.CreateMap().ForMember(sss =>
mapper.MergeInto(person, car)
with the accepted answer as extension-methods, simple and general version:
public static TResult MergeInto(this IMapper mapper, object item1, object item2)
{
return mapper.Map(item2, mapper.Map(item1));
}
public static TResult MergeInto(this IMapper mapper, params object[] objects)
{
var res = mapper.Map(objects.First());
return objects.Skip(1).Aggregate(res, (r, obj) => mapper.Map(obj, r));
}
after configuring mapping for each input-type:
IMapper mapper = new MapperConfiguration(cfg =>
{
cfg.CreateMap();
cfg.CreateMap();
}).CreateMapper();