public class Source{public int Value { get; set; }}public class Destination{public int Value { get; set; }}var configuration = new MapperConfiguration(cfg => cfg.CreateMap<Source, Destination>());var sources = new[]{new Source { Value = 5 },new Source { Value = 6 },new Source { Value = 7 }};IEnumerable<Destination> ienumerableDest = mapper.Map<Source[], IEnumerable<Destination>>(sources);ICollection<Destination> icollectionDest = mapper.Map<Source[], ICollection<Destination>>(sources);IList<Destination> ilistDest = mapper.Map<Source[], IList<Destination>>(sources);List<Destination> listDest = mapper.Map<Source[], List<Destination>>(sources);Destination[] arrayDest = mapper.Map<Source[], Destination[]>(sources);
所有支持的数据类型:
- IEnumerable
- IEnumerable
- ICollection
- ICollection
- IList
- IList
- List
- Arrays
多态类型
public class ParentSource{public int Value1 { get; set; }}public class ChildSource : ParentSource{public int Value2 { get; set; }}public class ParentDestination{public int Value1 { get; set; }}public class ChildDestination : ParentDestination{public int Value2 { get; set; }}var configuration = new MapperConfiguration(c=> {c.CreateMap<ParentSource, ParentDestination>().Include<ChildSource, ChildDestination>();c.CreateMap<ChildSource, ChildDestination>();});var sources = new[]{new ParentSource(),new ChildSource(),new ParentSource()};var destinations = mapper.Map<ParentSource[], ParentDestination[]>(sources);destinations[0].ShouldBeInstanceOf<ParentDestination>();destinations[1].ShouldBeInstanceOf<ChildDestination>();destinations[2].ShouldBeInstanceOf<ParentDestination>();
