0
Я хочу получить комментарий mapper (AutoMapper.Mapper.FindTypeMapFor), используя базовый тип.Как получить Mapper по BaseType
Можно ли получить его, как в использовании
AutoMapper.Mapper.CreateMap<IEntity, ListItemModelBase>()
.Include<Book, BookListItemModel>();
AutoMapper.Mapper.CreateMap<Book, BookListItemModel>()
.ForMember( a => a.Author, (a) => a.MapFrom(entity => entity.Author.Name))
.ForMember(a => a.Genre, (a) => a.MapFrom(entity => entity.Genre.Name));
AutoMapper.Mapper.CreateMap<BookListItemModel, Book>();
AutoMapper.Mapper.CreateMap<BookFormModel, Book>()
.ForMember(a => a.Id, (model) => model.PreCondition((context) => context.Id > 0))
.ForMember(a => a.UpdateDate, (model) => model.PreCondition((context) => context.Id > 0))
.ForMember(a => a.InsertDate, (model) => model.PreCondition((context) => context.Id == 0));
AutoMapper.Mapper.CreateMap<Book, BookFormModel>();
var mapper = AutoMapper.Mapper.FindTypeMapFor<IEntity, ListItemModelBase>();
//var mapper = AutoMapper.Mapper.FindTypeMapFor<Book, BookListItemModel>();
mapper.Dump();
mapper.GetPropertyMaps().Dump();
Это в значительной степени, почему мне не нравится реверсивные карты. Такие сложные, предварительные условия и всевозможные сумасшедшие вещи. Просто переверните код, не ставьте всю эту логику в конфигурацию AutoMapper, которую трудно понять/поддерживать. –