在 MVC 视图中,我有 2 个表单,其中包含如下所示的字段
登录注册模型.cs
public class LoginRegisterViewModel {
public string LoginUsername { get; set; }
public string LoginPassword { get; set; }
public string RegisterUsername { get; set; }
public string RegisterPassword { get; set; }
public string RegisterFirstName { get; set; }
public string RegisterLastName { get; set; }
}
LoginRegistte.cshtml(第一种形式)
@model LoginRegisterViewModel
@using (Html.BeginForm("Login", "MemeberController", FormMethod.Post, new {})) {
@Html.LabelFor(m => m.LoginUsername)
@Html.TextBoxFor(m => m.LoginUsername)
@Html.LabelFor(m => m.LoginPassword)
@Html.TextBoxFor(m => m.LoginPassword)
<input type='Submit' value='Login' />
}
第二种形式
@using (Html.BeginForm("Register", "MemeberController", FormMethod.Post, new {})) {
@Html.LabelFor(m => m.RegisterFirstName)
@Html.TextBoxFor(m => m.RegisterFirstName)
@Html.LabelFor(m => m.RegisterLastName)
@Html.TextBoxFor(m => m.RegisterLastName)
@Html.LabelFor(m => m.RegisterUsername)
@Html.TextBoxFor(m => m.RegisterUsername)
@Html.LabelFor(m => m.RegisterPassword)
@Html.TextBoxFor(m => m.RegisterPassword)
<input type='Submit' value='Register' />
}
成员控制器.cs
[HttpGet]
public ActionResult LoginRegister() {
LoginRegisterViewModel model = new LoginRegisterViewModel();
return view("LoginRegister", model);
}
[HttpPost]
public ActionResult Login(LoginRegisterViewModel model) {
if (ModelState.IsValid)
{
//some logic
}
else
{
return view(model);
}
}
[HttpPost]
public ActionResult Register(LoginRegisterViewModel model) {
if (ModelState.IsValid)
{
//some logic
}
else
{
return view(model);
}
}
在这种情况下,当我直接单击第一个表单按钮时,我想要对第一个表单进行验证。但我一次得到两个表单验证。我在控制器或其他地方做什么?