MVC Post方法没有从get方法中获取任何信息?

时间:2013-06-20 17:18:15

标签: c# asp.net-mvc-4 view controller

我有一个非常令人困惑的案例。我目前有以下代码

//get method
public ActionResult EmailValidation(string email, string token)
    {
        EmailValidationViewModel model = new EmailValidationViewModel();
        model.email = email;
        model.token = token;
        Member existingMember = workflow.GetMemberByEmail(model.email, vendor.VendorID);

        if(existingMember != null)
        {
          return View();
        }
    }


     [HttpPost]
    public ActionResult EmailValidation(EmailValidationViewModel model)
    {
    }

现在上面的代码,我已经在另一个页面上测试过,会自动将模型中的信息加载到post方法中。我相信新视图存在问题,我在下面发布的代码禁止它从get方法获取信息并将其发送到post方法。

我认为它与以下代码有关?

 [[Form_Start]]
<form action="/Mobile/Home/EmailValidation" id="EmailValidation" method="post" data-transition="slideup">

[[/ Form_Start]]

如果你们可能知道为什么它会在一个控制器中使用来自get方法的数据返回视图,但是在下一个控制器中没有,请告诉我。此外,如果您需要更多信息,也请告诉我,我会尽量为您提供尽可能多的代码。谢谢!

1 个答案:

答案 0 :(得分:0)

此:

    if(existingMember != null)
    {
      return View();
    }

返回没有模型的视图。

将其更改为:

    if(existingMember != null)
    {
      return View(existingMember);
    }