Publicar contenido Http JSON en la API web ASP.NET

Tengo una API web ASP.NET alojada y puedo acceder a las solicitudes de obtención de http muy bien, ahora necesito pasar un par de parámetros a una solicitud PostAsync de esta manera:

var param = Newtonsoft.Json.JsonConvert.SerializeObject(new { id=_id, code = _code });
HttpContent contentPost = new StringContent(param, Encoding.UTF8, "application/json");

var response = client.PostAsync(string.Format("api/inventory/getinventorybylocationidandcode"), contentPost).Result;

Esta llamada está devolviendo un resultado 404 No encontrado.

La acción de la API del lado del servidor se ve así:

[HttpPost]
public List<ItemInLocationModel> GetInventoryByLocationIDAndCode(int id, string code) {
...
}

Y solo para confirmar mi ruta en la API web se ve así:

config.Routes.MapHttpRoute(
            name: "DefaultApiWithAction",
            routeTemplate: "api/{controller}/{action}/{id}",
            defaults: new { id = RouteParameter.Optional }
);

Supongo que estoy pasando el HttpContent JSON incorrectamente, ¿por qué esto devolvería el estado 404?

Respuestas a la pregunta(1)

Su respuesta a la pregunta