简体   繁体   English

AutoMapper:将子成员从复杂类型映射到string []

[英]AutoMapper: Mapping child member from complex type to string[]

I have a destination type with a string[] property. 我有一个带有string []属性的目标类型。

Animal
  string[] Barks;

My source object is: 我的源对象是:

  AnimalDTO
     List<BarkTypes> Barks;

How do I map BarkTypes.NameOfBark to the string[] Barks ? 如何将BarkTypes.NameOfBark映射到字符串[] Barks

Something like this:? 这样的事情:?

Mapper.CreateMap<AnimalDTO, Animal>()
   .ForMember(dest => dest.Barks, y => y.MapFrom(x=>x.??????))

Completely untested, but: 完全未经测试,但是:

Mapper.CreateMap<AnimalDTO, Animal>()
   .ForMember(dest => dest.Barks, 
              y => y.MapFrom(x=>x.Barks
                                 .Select(z => z.NameOfBark)
                                 .ToArray());

You want ResolveUsing : 你想要ResolveUsing

Mapper.CreateMap<AnimalDTO, Animal>()
      .ForMember(dest => dest.Barks,
                    y => y.ResolveUsing(x=>x.Barks
                                            .Select(b=>b.NameOfBark)
                                            .ToArray())
              )

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM