Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

AutoMapper Sorting List

Tags:

automapper

I have this mapping defined

Mapper.CreateMap<Telephone, TelephoneDTO>()
.ForMember(dto => dto.Extension, opt => opt.MapFrom(src => src.Extension))
.ForMember(dto => dto.Number, opt => opt.MapFrom(src => src.Number))
.ForMember(dto => dto.Type, opt => opt.MapFrom(src => src.TelephoneType.Id));

when i do

IList<TelephoneDTO> dtos = Mapper.Map<IList<Telephone>, IList<TelephoneDTO>>(tels);

i would like the list of TelephoneDTO to be sorted by the Type.

How can i do that ?

thanks

like image 987
mathieu tanguay Avatar asked Feb 25 '26 15:02

mathieu tanguay


1 Answers

AutoMapper is used for mapping, not for sorting. You could sort the list once the mapping being done:

IList<TelephoneDTO> dtos = Mapper
    .Map<IList<Telephone>, IList<TelephoneDTO>>(tels)
    .OrderBy(x => x.Type)
    .ToList();
like image 66
Darin Dimitrov Avatar answered Mar 01 '26 08:03

Darin Dimitrov