C# 在同一枚举C之间自动映射#
我有一个映射枚举类型的自动映射器C# 在同一枚举C之间自动映射#,c#,enums,automapper,automapping,C#,Enums,Automapper,Automapping,我有一个映射枚举类型的自动映射器 Mapper.CreateMap<SASEMProfileVm, SASEMMembersDto>() .ForMember(dest => dest.ProfessionalHistoryDto.CarryingTime, opt => opt.MapFrom(src => src.ProfessionalHistoryCarryingTime)) Mapper.CreateMa
Mapper.CreateMap<SASEMProfileVm, SASEMMembersDto>()
.ForMember(dest => dest.ProfessionalHistoryDto.CarryingTime,
opt => opt.MapFrom(src => src.ProfessionalHistoryCarryingTime))
Mapper.CreateMap()
.FormMember(目标=>dest.ProfessionalHistoryDto.CarryingTime,
opt=>opt.MapFrom(src=>src.professionalhistorycarrytime))
CarryingTime是TimePeriod类型,而Professional History CarryingTime也是TimePeriod类型
当我运行它时,它会给我这个错误
表达式'dest=>Convert(dest.ProfessionalHistoryDto.CarryingTime)'
必须解析为顶级成员,而不是任何子对象的
财产。在子类型或AfterMap上使用自定义解析器
而不是选择。参数名称:lambdaExpression
我应该怎么做才能解决这个问题?Automapper无法为多级对象定义映射。你可以使用。后地图
Mapper.CreateMap<SASEMProfileVm, SASEMMembersDto>()
.AfterMap((s, d) =>
d.ProfessionalHistoryDto.CarryingTime = s.ProfessionalHistoryCarryingTime);
Mapper.CreateMap()
.AfterMap((s,d)=>
d、 ProfessionalHistoryDto.CarryingTime=s.ProfessionalHistoryCarryingTime);