MVC 与控制器方法不同的 Get 和 Post

MVC different Get and Post to the controller method

直说吧..

我需要接受获取数据和 post 数据到控制器方法。 我有一个 ajax 调用,其中包含一些 post 数据参数(比如说 ID 和名称),它将像这样定位到着陆页:/master/data?page=student.

所以我有3个参数需要传递: 1.页面==>用GET方法发送 2. id ==>用POST方法发送 3. 名称==>用POST方法发送

我有这样的控制器方法,但没有成功。如何解决?

<HttpPost()> _
<HttpGet()> _
Function data(page as string, id as Integer, name as string) As ActionResult
    bla..bla.bla...
End Function

在你的控制器之前添加

<AcceptVerbs("Post", "Get")>

AS

<AcceptVerbs("Post", "Get")>
<AllowAnonymous()> _
Function data(page as string, id as Integer, name as string) As ActionResult
    bla..bla.bla...
End Function

否则不要放任何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 设计模式。