在新记录中验证Id字段
本文关键字:Id 字段 验证 新记录 | 更新日期: 2023-09-27 18:18:07
我正在为MVC创建一个自定义登录。在我的帐户控制器我有两个动作:
-
索引(当用户注册时我在这里发布)
登录
Index动作以MemberModel
为参数,Login动作以LoginModel
为参数。我的问题是我不能在索引验证MemberModel,因为错误"Id字段是必需的"。
我做了一点研究,并将[Bind(Exclude="Id")]
添加到我的代码。所以,现在我的签名是这样的:
public ActionResult Index([Bind(Exclude="Id")]MemberModel model)
我的问题是,我不能张贴到这个方法,因为我添加了[Bind(Exclude="Id")]部分的签名。由于某种原因,所有的post请求都转到Login操作。
我的视图看起来像
@if (!Request.IsAuthenticated) {
using (@Html.BeginForm("Index","Account")) {
@Html.ValidationMessage("MailError")
@Html.HiddenFor(m => m.Id)
@Html.LabelFor(m => m.Name)
@Html.TextBoxFor(m => m.Name)
<br />
@Html.LabelFor(m => m.Surname)
@Html.TextBoxFor(m => m.Surname)
<br />
@Html.LabelFor(m => m.Email)
@Html.TextBoxFor(m => m.Email)
<br />
@Html.LabelFor(m => m.Password)
@Html.PasswordFor(m => m.Password)
<input type="submit" value="Register" />
}
}
你需要删除
@Html.HiddenFor(m => m.Id)