我在.NET Framework中的程序使用了 AutoMapper 2.0 并以这种方式创建了一个 Map :

Mapper.CreateMap<IChannel, Channel>()
            .ForMember(dest => dest.IsAlarm, opt => opt.MapFrom(src => src.IsAlarm))
            .ForMember(dest => dest.ActiveAlarms, opt => opt.MapFrom(src => src.Alarms.Active))
            .ForMember(dest => dest.Status, opt => opt.MapFrom(src => src.Status.ToString()))
            .ForMember(dest => dest.IsWarning, opt => opt.MapFrom(src => src.IsWarning))
            .ForMember(dest => dest.ActiveWarnings, opt => opt.MapFrom(src => src.Warnings.Active))
            .ForMember(dest => dest.Value, opt => opt.MapFrom(src => src.Measure));

现在我正在尝试将此程序移动到.NET Core,我必须使用新版本的AutoMapper . 我试过这样的方式:

Mapper.Initialize(cfg =>
{
    cfg.CreateMap<IChannel, Channel>()
    .ForMember(dest => dest.IsAlarm, opt => opt.MapFrom(src => src.IsAlarm))
    .ForMember(dest => dest.ActiveAlarms, opt => opt.MapFrom(src => src.Alarms.Active))
    .ForMember(dest => dest.Status, opt => opt.MapFrom(src => src.Status.ToString()))
    .ForMember(dest => dest.IsWarning, opt => opt.MapFrom(src => src.IsWarning))
    .ForMember(dest => dest.ActiveWarnings, opt => opt.MapFrom(src => src.Warnings.Active))
    .ForMember(dest => dest.Value, opt => opt.MapFrom(src => src.Measure));
});


var source = new IChannel(); //??

Mapper.Map<IChannel, Channel>(source);

显然我无法创建接口的实例 . 如何使用最新版本的AutoMapper复制第一个代码块?