1. public class OuterSource
    2. {
    3. public int Value { get; set; }
    4. public InnerSource Inner { get; set; }
    5. }
    6. public class InnerSource
    7. {
    8. public int OtherValue { get; set; }
    9. }
    10. public class OuterDest
    11. {
    12. public int Value { get; set; }
    13. public InnerDest Inner { get; set; }
    14. }
    15. public class InnerDest
    16. {
    17. public int OtherValue { get; set; }
    18. }
    19. var config = new MapperConfiguration(cfg => {
    20. cfg.CreateMap<OuterSource, OuterDest>();
    21. cfg.CreateMap<InnerSource, InnerDest>();
    22. });
    23. config.AssertConfigurationIsValid();
    24. var source = new OuterSource
    25. {
    26. Value = 5,
    27. Inner = new InnerSource {OtherValue = 15}
    28. };
    29. var mapper = config.CreateMapper();
    30. var dest = mapper.Map<OuterSource, OuterDest>(source);
    31. dest.Value.ShouldEqual(5);
    32. dest.Inner.ShouldNotBeNull();
    33. dest.Inner.OtherValue.ShouldEqual(15);