使用Automapper的BeforeMap方法,在映射前进行额外操作。
示例代码:
public class OuterSource { public int Id { get; set; } public InnerSource Inner { get; set; } }
public class InnerSource { public string Name { get; set; } }
public class OuterDest { public int Id { get; set; } public InnerDest Inner { get; set; } }
public class InnerDest { public string Name { get; set; } }
public class MappingProfile : Profile
{
public MappingProfile()
{
CreateMap
CreateMap();
}
}
// 使用示例
var source = new OuterSource { Id = 1, Inner = new InnerSource { Name = "inner" } };
var mapper = new MapperConfiguration(cfg => cfg.AddProfile
Console.WriteLine(dest.Id); // 输出 101 Console.WriteLine(dest.Inner.Name); // 输出 inner