Antecedentes:Equivalente a [Bind (Prefix = "principalId")] en MVC4 Web Api?
En MVC3, he utilizado la siguiente sintaxis para especificar nombres de los parámetros personalizados Action
:
public ActionResult ActionName([Bind(Prefix = "principalID")] int userID,
[Bind(Prefix = "dependentID")] long applicationID)
La ruta de esta acción se define como sigue (ActionNameConstraint
es una costumbre IRouteConstraint
) :
routes.MapHttpRoute(
"DependantAction",
"{controller}/{principalID}/{action}/{dependentID}",
new {controller = @"[^0-9]+", action = ActionNameConstraint.Instance, dependentID = RouteParameter.Optional}
);
pregunta:
La BindAttribute
es una clase System.Web.Mvc
. ¿Hay un equivalente de esto (enlace de parámetros) en Web Api?
Por supuesto, si hay otras soluciones para lograr el mismo resultado, ¡me encantaría escucharlas!
Revisé ese artículo en realidad, realmente no tiene el mismo propósito: el artículo cubre principalmente el enlace de modelo (la mayoría de mis búsquedas han dado lugar a resultados sobre el enlace de modelo en realidad) – diaho
ASP.NET Web API no lo hace tener incorporada una funcionalidad 'BindAttribute'. El enlace del parámetro de acción se realiza con mi modelo de enlace y la función de formato de Web API. Por lo tanto, no son solo carpetas modelo. Otro consejo aquí es que: no use nada en el espacio de nombres 'System.Web.Mvc' con ASP.NET Web API.99% del tiempo, estarás en problemas si haces esto. – tugberk
Ver respuesta actualizada. – Meligy