Это моя первая попытка использовать AutoMapper MapperConfiguration. В приведенном ниже коде моим источником являются объекты OrderItem, а моим назначением - объекты AvailableRoll, однако, когда я запускаю код, заполняется только последний сопоставленный элемент.
private List<AvailableRoll> MapOrderItemsToAvailableRolls(List<Data.Winder.OrderItem> orderItems) {
var rtrn = new List<AvailableRoll>();
var config = new MapperConfiguration(cfg => {
cfg.CreateMap<Data.Winder.OrderItem, AvailableRoll>().ForMember(ar => ar.Diameter, oi => oi.MapFrom(x => x.RollDiameter));
cfg.CreateMap<Data.Winder.OrderItem, AvailableRoll>().ForMember(ar => ar.Item, oi => oi.MapFrom(x => x.ItemNumber));
cfg.CreateMap<Data.Winder.OrderItem, AvailableRoll>().ForMember(ar => ar.RollsPlanned, oi => oi.MapFrom(x => x.EstimatedNumberRolls));
});
var mapper = config.CreateMapper();
mapper.Map(orderItems, rtrn);
return rtrn;
Когда я запускаю код, заполняется только RollsPlanned. Если я переместу Диаметр или Элемент ниже Запланированных бросков, то этот участник будет заполнен. Что я делаю неправильно? ТИА!
UPDATE:
Требования изменились - больше не нужно отображать эти классы, поэтому я не буду заниматься этим дальше.