Cómo inyectar AutoMapper IMappingEngine con StructureMap

La mayoría de los ejemplos que he encontrado paraAutomapper use el objeto Mapper estático para administrar asignaciones de tipo. Para mi proyecto, necesito inyectar un IMapperEngine como parte de la construcción del objeto utilizando StructureMap para que podamos simular el mapeador en pruebas unitarias y no podamos usar el mapeador estático. También necesito admitir la configuración de los perfiles de AutoMapper.

Mi pregunta es cómo puedo configurar el registro de StructureMap para que pueda proporcionar una instancia de IMappingEngine cuando se construye una instancia de MyService.

Aquí está la firma del constructor de servicios:

public MyService(IMappingEngine mapper, IMyRepository myRepository, ILogger logger)

Y aquí está el registro StructureMap.

public class MyRegistry : StructureMap.Configuration.DSL.Registry
{
    public MyRegistry()
    {
        For<IMyRepository>().Use<MyRepository>();
        For<ILogger>().Use<Logger>();
        //what to do for IMappingEngine?
    }
}

Y el perfil que quiero cargar.

public class MyAutoMapperProfile : AutoMapper.Profile
{
    protected override void Configure()
    {
        this.CreateMap<MyModel, MyDTO>();
    }
}

Respuestas a la pregunta(4)

Su respuesta a la pregunta