Cómo enviar correctamente el parámetro de acción junto con la consulta en BreezeJs

Actualmente estoy llamando a todas las consultas de datos como se muestra en los documentos / ejemplos de BreezeJs:
getEntityList = function (predicate) {
  var query = new entityModel.EntityQuery().from("EntityList");
  if (predicate)
    query = query.where(predicate);
  return manager.executeQuery(query);
}

Pero quiero pasar un parámetro adicional a la acción del controlador antes de que se devuelva cualquier resultado consultable:

[AcceptVerbs("GET")]
public IQueryable<Entity> EntityList(string actionParam) {
  //here goes logic that depends on actionParam
  //and returns IQueryable<Entity>
}

Como sabemos por la documentación:

Breeze convierte la consulta en una cadena de consulta OData como esta:

? $ filter = IsArchived% 20eq% 20false & $ orderby = CreatedAt

Aquí es donde empieza el problema. ¿Cómo debo crear una consulta para pasar param a la acción del controlador?

getEntityList = function (predicate, actionParam) {
  var query = new entityModel.EntityQuery().from("EntityList");
  if (predicate)
    query = query.where(predicate);
  if(actionParam)
    // ???
  return manager.executeQuery(query);
}
Ya he intentado configurar la ruta a:
routes.MapHttpRoute(
            name: "DefaultApi",
            routeTemplate: "api/{controller}/{action}/{actionParam}",
            defaults: new { query = RouteParameter.Optional }
        );

y enviandoactionParam aplicándolo en unadesde sección,

var query = new entityModel.EntityQuery()
  .from("EntityList/" + encodeURIComponent(actionParam));

pero la codificación falla en algunos caracteres especiales y se está lanzando una mala solicitud.

¿Cómo puedo enviar correctamenteactionParam en tal escenario? Por favor ayuda.

Respuestas a la pregunta(2)

Su respuesta a la pregunta