Napisałem prosty scenariusz rodzic-dziecko i nie mogę go zmapować za pomocą Automapper. W poniższym scenariuszu oczekuję, że lista Elementów zamówienia zostanie zmapowana do listy dtoOrderItems, ale nie dzieje się to automatycznie. Czy muszę napisać to ręcznie za pomocą pętli for lub co?Jak zmapować model kolekcji rodzic/dziecko za pomocą Automapper?
public class Order
{
public int OrderNumber {get; set;}
public List<OrderItem> OrderItems { get; set; }
public Order()
{
OrderItems = new List<OrderItem>();
OrderItems.Add(new OrderItem() {Quantity= 10});
}
}
public class OrderItem
{
public int Quantity {get; set;}
}
public class DTOOrder
{
public int DTOOrderNumber { get; set; }
public List<DTOOrderItem> DTOOrderItems { get; set; }
public DTOOrder()
{
DTOOrderItems = new List<DTOOrderItem>();
}
}
public class DTOOrderItem
{
public int DTOQuantity { get; set; }
}
public DTOOrder TestConversion()
{
AutoMapper.Mapper.CreateMap<OrderItem, DTOOrderItem>();
AutoMapper.Mapper.CreateMap<Order, DTOOrder>();
Order order = new Order();
var dtoOrder = AutoMapper.Mapper.Map<Order, DTOOrder>(order);
return dtoOrder;
}
Dzięki. Musiałem wykonać następujące AutoMapper.Mapper.CreateMap(). ForMember (dto => dto.DTOOrderItems, opt => opt.MapFrom (src => src.OrderItems)); –
user1767363