Ajax MVC不同的获取和发布到控制器的方法
让我们直说吧 我需要接受get data并将数据发布到controller方法。 我有一个ajax调用,带有一些post数据参数(比如id和name),它将以如下方式指向登录页:/master/data?page=student 所以我有3个参数需要传递: 1.page==>send with GET方法 2.id==>使用POST方法发送 3.name==>send with POST方法 我有这样的控制器方法,但没有成功。如何修复它Ajax MVC不同的获取和发布到控制器的方法,ajax,asp.net-mvc,model-view-controller,Ajax,Asp.net Mvc,Model View Controller,让我们直说吧 我需要接受get data并将数据发布到controller方法。 我有一个ajax调用,带有一些post数据参数(比如id和name),它将以如下方式指向登录页:/master/data?page=student 所以我有3个参数需要传递: 1.page==>send with GET方法 2.id==>使用POST方法发送 3.name==>send with POST方法 我有这样的控制器方法,但没有成功。如何修复它 <HttpPost()> _ <Http
<HttpPost()> _
<HttpGet()> _
Function data(page as string, id as Integer, name as string) As ActionResult
bla..bla.bla...
End Function
_
_
函数数据(页面作为字符串,id作为整数,名称作为字符串)作为ActionResult
布拉..布拉..布拉。。。
端函数
在成为控制器之前添加
<AcceptVerbs("Post", "Get")>
作为
_
函数数据(页面作为字符串,id作为整数,名称作为字符串)作为ActionResult
布拉..布拉..布拉。。。
端函数
否则,请不要使用任何HTTP动词来允许所有内容我个人更喜欢另一种方式。IE与示例代码:
[HttpPost]
public ActionResult RegisterUser(Register model)
{
if (!ModelState.IsValid)
{
ViewBag.stuff= new stuffDbContext().stuff;
// If we got this far, something failed, redisplay form
return PartialView("RegisterUser", model);
}
[HttpGet]
public ActionResult RegisterUser()
{
return PartialView();
}
它可能会打破OO编程的干涸,但是它支持MV-WYFY设计模式。您不应该需要这些http*属性,否则这应该可以工作。“没有成功”是什么意思?哎呀……我的错……事实上它成功了。我得到了一个空值,我想是因为这个。对不起,它按要求传递了值。首先,对不起,这是我的错。它确实有效。我的ajax脚本传递空值时出现问题。有什么不同的用途和用途?对我来说,使用and仍然有效。是的,它将有效,但允许多个动词的正确方法是在AcceptVerbs列表中传递它们:)
[HttpPost]
public ActionResult RegisterUser(Register model)
{
if (!ModelState.IsValid)
{
ViewBag.stuff= new stuffDbContext().stuff;
// If we got this far, something failed, redisplay form
return PartialView("RegisterUser", model);
}
[HttpGet]
public ActionResult RegisterUser()
{
return PartialView();
}