Automapper 聚焦要映射的子对象
Automapper foces subobjects to be mapped
我正在尝试将响应对象从网络服务映射到我项目中的 Class。我认为 Automapper 甚至会自动映射子对象,除非为成员强制设置,否则不会。我为什么要这样做?
Mapper.CreateMap<GetIfpQuoteResponse.Quote, QuoteWSModel>()
.ForMember(dest => dest.CarrierRate, opt => opt.MapFrom(src => src.Carriers))
.ForMember(dest => dest.DroppedCarriers, opt => opt.MapFrom(src => src.DroppedRates))
.ForMember(dest => dest.MemberPlans, opt => opt.MapFrom(src => src.MemberPlans));
当我提到 class 这样的映射时,为什么自动映射器不会映射我的子对象
Mapper.CreateMap<GetIfpQuoteResponse.Quote, QuoteWSModel>();
Mapper.CreateMap<GetIfpQuoteResponse.Quote.Carrier, CarrierRateModel>();
Mapper.CreateMap<GetIfpQuoteResponse.Quote.DroppedCarrier, DroppedCarrierModel>();
AutoMapper 仅映射 顶级 对象。
如果您的 class 是按照以下方式构建的,它将不起作用:
Class A
{
B b;
}
Class B
{
}
ClassA会不知道怎么映射属性B里面classA.
为此,您需要创建个人资料 class。
我正在尝试将响应对象从网络服务映射到我项目中的 Class。我认为 Automapper 甚至会自动映射子对象,除非为成员强制设置,否则不会。我为什么要这样做?
Mapper.CreateMap<GetIfpQuoteResponse.Quote, QuoteWSModel>()
.ForMember(dest => dest.CarrierRate, opt => opt.MapFrom(src => src.Carriers))
.ForMember(dest => dest.DroppedCarriers, opt => opt.MapFrom(src => src.DroppedRates))
.ForMember(dest => dest.MemberPlans, opt => opt.MapFrom(src => src.MemberPlans));
当我提到 class 这样的映射时,为什么自动映射器不会映射我的子对象
Mapper.CreateMap<GetIfpQuoteResponse.Quote, QuoteWSModel>();
Mapper.CreateMap<GetIfpQuoteResponse.Quote.Carrier, CarrierRateModel>();
Mapper.CreateMap<GetIfpQuoteResponse.Quote.DroppedCarrier, DroppedCarrierModel>();
AutoMapper 仅映射 顶级 对象。
如果您的 class 是按照以下方式构建的,它将不起作用:
Class A
{
B b;
}
Class B
{
}
ClassA会不知道怎么映射属性B里面classA.
为此,您需要创建个人资料 class。