【发布时间】:2012-02-11 21:43:34
【问题描述】:
我有一个使用 JQuery 与后端通信的网页。我有一些 POST 操作。但是,我现在有一个 GET 操作,并且我注意到传递给它的参数值为 null。我的 POST 操作工作得很好。我不知道为什么。
在我的 .html 文件中,我有以下 JQuery 查询:
var vm = { emailAddress:"someone@somewhere.com" };
$.ajax({
url: "/myService/myAction",
type: "GET",
data: JSON.stringify(vm),
contentType: "application/json",
success: myAction_Succeeded,
error: myAction_Failed
});
在我的控制器中,我有:
public class MyServiceController : Controller
{
[AcceptVerbs(HttpVerbs.Get)]
public ActionResult MyAction(string emailAddress)
{
return Json(new { address:emailAddress });
}
}
我的路线设置如下:
context.MapRoute(
"MyAction",
"myService/{controller}/MyAction",
new { controller = "MyService", action = "MyAction" }
);
我有一种预感,我的路线中遗漏了一些东西。但我不确定它是什么。我遵循与 POST 操作相同的语法。带有这些操作的参数工作得很好。但是我的 GET 操作的参数(如上面的参数)具有空值。我的问题是,我做错了什么,如果我需要传递多个参数怎么办?
非常感谢您的帮助!
【问题讨论】:
标签: jquery asp.net-mvc-3