public AutoMapperProfiles() { CreateMap <User, UserForListDto>().ForMember(destinationMember => destinationMember.PhotoUrl, IMappingOperationOptions => { IMappingOperationOptions.MapFrom(sourceMember => sourceMember.Photos.FirstOrDefault(p => p.IsMain).Url); }).ForMember(Propertytomanuallychange => Propertytomanuallychange.Age, IMappingOperationOptions => { IMappingOperationOptions.ResolveUsing(source => source.DateOfBirth.CalculateAge()); }); CreateMap <User, UserForDetailedDto>().ForMember(destinationMember => destinationMember.PhotoUrl, IMappingOperationOptions => { IMappingOperationOptions.MapFrom(sourceMember => sourceMember.Photos.FirstOrDefault(p => p.IsMain).Url); }).ForMember(Propertytomanuallychange => Propertytomanuallychange.Age, IMappingOperationOptions => { IMappingOperationOptions.ResolveUsing(source => source.DateOfBirth.CalculateAge()); }); CreateMap <Photo, PhotosForDetailedDto>(); CreateMap <UserForUpdateDto, User>(); CreateMap <Photo, PhotoForReturnDto>(); CreateMap <PhotoForCreationDto, Photo>(); CreateMap <UserForRegisterDto, User>(); CreateMap <MessageForCreationDto, Message>().ReverseMap(); CreateMap <Message, MessageToReturnDto>() .ForMember(m => m.SenderPhotoUrl, opt => opt.MapFrom(m => m.Sender.Photos.FirstOrDefault(p => p.IsMain).Url)) .ForMember(m => m.RecipientPhotoUrl, opt => opt.MapFrom(m => m.Recipient.Photos.FirstOrDefault(p => p.IsMain).Url)); }
public AutoMapperProfiles() { CreateMap <User, UserForListDto>() .ForMember(dest => dest.PhotoUrl, opt => opt.MapFrom(sourceMember => sourceMember.Photos.FirstOrDefault(p => p.IsMain).Url)) .ForMember(dest => dest.Age, IMappingOperationOptions => IMappingOperationOptions .MapFrom(src => src.DateOfBirth.CalculateAge())); CreateMap <User, UserForDetailedDto>() .ForMember(dest => dest.PhotoUrl, opt => opt.MapFrom(sourceMember => sourceMember.Photos.FirstOrDefault(p => p.IsMain).Url)) .ForMember(dest => dest.Age, IMappingOperationOptions => IMappingOperationOptions .MapFrom(src => src.DateOfBirth.CalculateAge())); CreateMap <Photo, PhotosForDetailedDto>(); }
public AutoMapperProfiles() { CreateMap <AppUser, MemberDto>() .ForMember(destinationMember => destinationMember.PhotoUrl, IMappingOperationOptions => IMappingOperationOptions .MapFrom(sourceMember => sourceMember.Photos.FirstOrDefault(x => x.IsMain).Url)) .ForMember(destinationMember => destinationMember.Age, IMappingOperationOptions => IMappingOperationOptions .MapFrom(sourceMember => sourceMember.DateOfBirth.CalculateAge())); CreateMap <Photo, PhotoDto>(); CreateMap <MemberUpdateDto, AppUser>(); CreateMap <RegisterDto, AppUser>(); }
public AutoMapperProfiles() { // we specify the source and the destination mappings CreateMap <User, UserForListDto>() //dest is destination, opt is option, src is source, p is photo // get photo URL .ForMember(dest => dest.PhotoUrl, opt => opt.MapFrom(src => src.Photos.FirstOrDefault(p => p.IsMain).Url)) // get age of user .ForMember(dest => dest.Age, IMappingOperationOptions => IMappingOperationOptions.MapFrom(src => src.DateOfBirth.CalculateAge())); CreateMap <User, UserForDetailedDto>() .ForMember(dest => dest.PhotoUrl, opt => opt.MapFrom(src => src.Photos.FirstOrDefault(p => p.IsMain).Url)) .ForMember(dest => dest.Age, IMappingOperationOptions => IMappingOperationOptions.MapFrom(src => src.DateOfBirth.CalculateAge())); CreateMap <Photo, PhotosForDetailedDto>(); // whenever you create a map, it's "from" then "to" // exmaple: you want to map UserForUpdateDto to the User, not the other way around CreateMap <UserForUpdateDto, User>(); }