I’d like to map a paged list of business objects to a paged list of view model objects using something like this:
var listViewModel = _mappingEngine.Map<IPagedList<RequestForQuote>, IPagedList<RequestForQuoteViewModel>>(requestForQuotes);
The paged list implementation is similar to Rob Conery’s implementation here:
http://blog.wekeroad.com/2007/12/10/aspnet-mvc-pagedlistt/
How can you setup Automapper to do this?
AutoMapper does not support this out of the box, as it doesn’t know about any implementation of
IPagedList<>. You do however have a couple of options:Write a custom
IObjectMapper, using the existing Array/EnumerableMappers as a guide. This is the way I would go personally.Write a custom TypeConverter, using:
and inside use
Mapper.Mapto map each element of the list.