使用AutoMapper通过DI容器映射未映射的成员

本文关键字:映射 成员 AutoMapper 通过 DI 使用 | 更新日期: 2023-09-27 18:03:04

给定这些类:

    public class Source
    {
        public int SalesManager { get; set; }
    }
    public class Destination
    {
        public int SalesManager { get; set; }
        public SelectList SalesManagers { get; set; }
    }
    public class SalesManagersBuilder
    {
        public SalesManagersBuilder(IDataContext db)
        {
            _db = db;
        }
        private readonly IDataContext _db;
        public SelectList BuildList()
        {
            ...
        }
    }

和这个配置:

 cfg.CreateMap<Source, Destination>().ForMember(x => x.SalesManagers,o => o.???);

我如何使用从DI容器(StructureMap)拉的SalesMangersBuilder类填充SalesManagers与AutoMapper ?这可能只是在AutoMapper工作吗?

使用AutoMapper通过DI容器映射未映射的成员

如果这不是你需要的https://github.com/AutoMapper/AutoMapper/wiki/Lists-and-arrays

你可以尝试自定义值解析器https://github.com/AutoMapper/AutoMapper/wiki/Custom-value-resolvers

我已经有一段时间没有玩automapper了,所以我想给一个更好的答案。