Automapper complex types mapping exception

你。 提交于 2019-12-01 08:48:10

Thank's to stuartd this are working now!

The thing that I didn't understand was, that I have to map bottom to top! All the sub-objects have to mapped first, so they would be recognized at the moment parent objects are mapped!

Now profile's looks like this:

public class Out: Profile
{
   protected override void Configure()
    {
        CreateMap<Step1, PersonalDetails>();
        CreateMap<Step2, Phones>();
        CreateMap<Step3, ElectonicCommunication>();

        CreateMap<Params, Parameters>();
        CreateMap<Params, RequestContent>()
            .ForMember(dest => dest.Id, opt => opt.MapFrom(src => src.RequestId))
            .ForAllMembers(opt => opt.Ignore());
        CreateMap<Steps, RequestContent>()
            .ForMember(dest => dest.PersonalDetails, opt => opt.MapFrom(src => src.Step1))
            .ForMember(dest => dest.Phones, opt => opt.MapFrom(src => src.Step2))
            .ForMember(dest => dest.ElectonicCommunication, opt => opt.MapFrom(src => src.Step3))
            .ForAllMembers(opt => opt.Ignore());

        CreateMap<MvcModel, Request>()
            .ForMember(dest => dest.Parameters, opt => opt.MapFrom(src => src.Params))
            .ForMember(dest => dest.RequestContent, opt => opt.MapFrom(src => src.Steps));
    }
}
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!