Automapper - Mapeador de herança não está funcionando com conversor de tipos

Não é possível usar a herança de mapeamento e o TypeConverter juntos.

Eu tenho este código:

/* BaseClassTypeConverter.cs */
public class BaseClassTypeConverter : ITypeConverter<SourceClass, BaseClass> {
    public BaseClass Convert(ResolutionContext context) {
        if (context == null || context.IsSourceValueNull)
            return null;

        var src = (SourceClass)context.SourceValue;

        return new BaseClass() {
            CommonAttr = src.SourceAttr
        };
    }
}

/* AutoMapperConfig.cs */
public static class AutoMapperConfig {

    public static void RegisterMappings() {
        AutoMapper.Mapper.Initialize(config => {
            config
                .CreateMap<SourceClass, BaseClass>()
                .Include<SourceClass, DerivedClass1>()
                .Include<SourceClass, DerivedClass2>()  
                .ForMember(dest => dest.CommonAttr, o => o.MapFrom(src => src.SourceAttr));
                //.ConvertUsing<BaseClassTypeConverter>(); //  NOT WORKING

            config
                .CreateMap<SourceClass, DerivedClass1>()
                .ForMember(dest => dest.Dummy, o => o.MapFrom(src => src.SourceAttr2))
                .IncludeBase<SourceClass, BaseClass>();
        });
    }
}

Como você pode ver, quero poder mapear a partir de uma classe TypeConverter, porque tenho alguns cálculos mais complexos para fazer, não apenas atribuir valores como acima.

Quando uso o conversor de tipos, os mapeamentos não funcionam, no entanto, quando removo o ConvertUsing e utilizo o mapeamento em linha com o ForMember, tudo funciona bem.

É algo que estou sentindo falta?

PD. Estou usando: AutoMapper: version = "4.2.1", targetFramework = "net452"

questionAnswers(1)

yourAnswerToTheQuestion