using System.Collections.Generic;
public static void Main()
""description"": ""Colli 1""
""description"": ""Colli 2""
Shipment src = JsonConvert.DeserializeObject<Shipment>(json);
MapperConfiguration _config = new MapperConfiguration(cfg =>
cfg.CreateMap<Colli, ColliDto>();
cfg.CreateMap<List<Colli>, List<ColliDto>>()
.ConvertUsing<ColliListConverter>();
cfg.CreateMap<Shipment, ShipmentDto>();
IMapper _mapper = _config.CreateMapper();
ShipmentDto dest = _mapper.Map<ShipmentDto>(src);
Console.WriteLine(JsonConvert.SerializeObject(dest, Formatting.Indented));
public class ColliListConverter : ITypeConverter<List<Colli>, List<ColliDto>>
public List<ColliDto> Convert(List<Colli> source, List<ColliDto> destination, ResolutionContext context)
var retval = new List<ColliDto>();
foreach (var colli in source)
for (int i = 0; i < colli.Count; i++)
retval.Add(context.Mapper.Map<ColliDto>(colli));
public int Count { get; set; }
public string Description { get; set; }
public List<Colli> Collis { get; set; }
public List<ColliDto> Collis { get; set; }
public string Description { get; set; }