¿Por qué no se llama a mi método de API web con argumentos dobles?

Tengo un método de API web que toma dos argumentos dobles:

Interfaz de repositorio:

public interface IInventoryItemRepository
{
. . .
    IEnumerable<InventoryItem> GetDepartmentRange(double deptBegin, double deptEnd);
. . .
}

Repositorio:

public IEnumerable<InventoryItem> GetDepartmentRange(double deptBegin, double deptEnd)
{
    // Break the doubles into their component parts:
    int deptStartWhole = (int)Math.Truncate(deptBegin);
    int startFraction = (int)((deptBegin - deptStartWhole) * 100);
    int deptEndWhole = (int)Math.Truncate(deptEnd);
    int endFraction = (int)((deptBegin - deptEndWhole) * 100);

    return inventoryItems.Where(d => d.dept >= deptStartWhole).Where(e => e.subdept >= startFraction)
        .Where(f => f.dept <= deptEndWhole).Where(g => g.subdept >= endFraction);
}

Controlador:

[Route("api/InventoryItems/GetDeptRange/{BeginDept:double}/{EndDept:double}")]
public IEnumerable<InventoryItem> GetInventoryByDeptRange(double BeginDept, double EndDept)
{
    return _inventoryItemRepository.GetDepartmentRange(BeginDept, EndDept);
}

Cuando intento invocar este método, a través de:

http://localhost:28642/api/inventoryitems/GetDeptRange/1.1/99.99

...Yo obtengo, "Error HTTP 404.0 - No encontrado El recurso que está buscando se ha eliminado, su nombre ha cambiado o no está disponible temporalmente."

Los métodos relacionados se ejecutan bien (otros métodos en este controlador).

Respuestas a la pregunta(2)

Su respuesta a la pregunta