Tôi đã viết một kịch bản cha-con đơn giản và không thể làm cho nó được ánh xạ bằng Automapper. Trong kịch bản sau đây, tôi đang mong đợi danh sách các OrderItems được ánh xạ tới danh sách dtoOrderItems nhưng nó không xảy ra tự động. Tôi có cần phải viết thủ công bằng cách sử dụng cho vòng lặp hay cái gì đó?Làm thế nào để ánh xạ một mô hình bộ sưu tập cha/con bằng 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;
}
Cảm ơn. Tôi đã phải làm như sau AutoMapper.Mapper.CreateMap(). ForMember (dto => dto.DTOOrderItems, opt => opt.MapFrom (src => src.OrderItems)); –
user1767363