Tengo una página web que utiliza JQuery para comunicarse con el servidor. Tengo algunas acciones de POST. Sin embargo, ahora tengo una acción GET y me he dado cuenta de que los valores de los parámetros pasados son nulos. Mis acciones POST funcionan bien. No puedo entender por qué.Pasar parámetros de JQuery a Acción del controlador en ASP.NET MVC 3
De mi archivo html, tengo el siguiente jQuery consulta:
var vm = { emailAddress:"[email protected]" };
$.ajax({
url: "/myService/myAction",
type: "GET",
data: JSON.stringify(vm),
contentType: "application/json",
success: myAction_Succeeded,
error: myAction_Failed
});
En mi controlador, tengo:
public class MyServiceController : Controller
{
[AcceptVerbs(HttpVerbs.Get)]
public ActionResult MyAction(string emailAddress)
{
return Json(new { address:emailAddress });
}
}
Mi ruta se configura como sigue:
context.MapRoute(
"MyAction",
"myService/{controller}/MyAction",
new { controller = "MyService", action = "MyAction" }
);
Tengo la corazonada de que me falta algo en mi ruta. Pero no estoy seguro de qué se trata. Seguí la misma sintaxis que utilicé con mis acciones POST. Los parámetros con esas acciones funcionan bien. Pero los parámetros con mis acciones GET, como el anterior, tienen valores nulos. Mi pregunta es, ¿qué estoy haciendo mal y qué pasa si necesito pasar múltiples parámetros?
¡Muchas gracias por su ayuda!
¡muchas gracias por su ayuda! –