Ejecute el procedimiento almacenado con parámetros en Dapper

Estoy usandoApuesto (GraciasSam, gran proyecto.) un micro ORM con un DAL y por alguna razón no puedo ejecutar procedimientos almacenados con parámetros de entrada.

En un servicio de ejemplo tengo el siguiente código:

public void GetSomething(int somethingId)
{
    IRepository<Something, SomethingEnum> repository = UnitOfWork.GetRepository<Something, SomethingEnum>();

    var param = new DynamicParameters();
    param.Add("@somethingId", dbType: DbType.Int32, value:somethingId, direction: ParameterDirection.Input);

    var result = repository.Exec<Something>(SomethingEnum.spMyStoredProcedure, param);

    ...

}

Cuando se desencadena la ejecución del procedimiento almacenado, se lanza una SqlException que indica que necesito proporcionar el 'somethingId'

El procedimiento o la función 'spMyStoredProcedure' espera el parámetro '@somethingId', que no se proporcionó.

MiDAL es similar basado en este proyecto github de Pencroff.

¿Me estoy perdiendo de algo?

Actualizar: En realidad estoy pasando el commandType a través de SomethingEnum:

 public class SomethingEnum : EnumBase<SomethingEnum, string>
 {
    public static readonly SomethingEnum spMyStoredProcedure = new SomethingEnum("spMyStoredProcedure", "[dbo].[spMyStoredProcedure]", CommandType.StoredProcedure);

    public SomethingEnum(string Name, string EnumValue, CommandType? cmdType): base(Name, EnumValue, cmdType)
    {
    }
}

Respuestas a la pregunta(5)

Su respuesta a la pregunta