我正在使用asp.net mvc 4 razor,我还是新手,我有一个问题。我已经搜索了这个问题,我找不到任何我能理解的东西。
当我点击登录输入类型提交时,为什么我的两个表单都会生效?
如何在不影响其他表单的情况下进行登录验证,以及使用寄存器?
以下是我的观点:
@using (Html.BeginForm("Login","Home",FormMethod.Post))
{
<p >
ID number:
@Html.TextBoxFor(e=>e.cID)
@Html.ValidationMessageFor(e => e.cID)</p>
<p >
Password:
@Html.TextBoxFor(e => e.cpassword)
@Html.ValidationMessageFor(e => e.cpassword)</p>
<p><input type="submit" value="Login"/></p>
}
@using (Html.BeginForm("Register","Home",FormMethod.Post))
{
<p>
ID number:
@Html.TextBoxFor(m=>m.cID)
@Html.ValidationMessageFor(e => e.cID)
</p>
<p>
Firstname:
@Html.TextBoxFor(e => e.cfname)
@Html.ValidationMessageFor(e => e.cfname)
</p>
<p>
Lastname:
@Html.TextBoxFor(e => e.clname)
@Html.ValidationMessageFor(e => e.clname)
</p>
<p>
Course:
@Html.DropDownListFor(e => e.ccourse,help.GetCourse(), "--Select Course--")
@Html.ValidationMessageFor(e => e.ccourse)
</p>
<p>
Password:
@Html.TextBoxFor(e => e.cpassword)
@Html.ValidationMessageFor(e => e.cpassword)
</p>
<p>
Confirm Password:
@Html.TextBoxFor(e => e.cconfirmpas)
@Html.ValidationMessageFor(e => e.cconfirmpas)
</p>
<p ><input type="submit" value="Register"/></p>
}
和我的模特课:
public class Class1
{
[Required(AllowEmptyStrings = false, ErrorMessage = "Id number is mandatory")]
[RegularExpression("([1-9][0-9]*)", ErrorMessage = "Number Only Please")]
public int cID { get; set; }
[Required(AllowEmptyStrings = false, ErrorMessage = "Firstname is required")]
[RegularExpression(@"^[a-zA-Z]+$", ErrorMessage = "Use letters only please")]
public string cfname { get; set; }
[Required(AllowEmptyStrings = false, ErrorMessage = "Lastname is required")]
[RegularExpression(@"^[a-zA-Z]+$", ErrorMessage = "Use letters only please")]
public string clname { get; set; }
[Required(AllowEmptyStrings = false, ErrorMessage = "password is required")]
[RegularExpression(@"^[a-zA-Z][a-zA-Z0-9]*$", ErrorMessage = "Use only Alphanumeric")]
public string cpassword { get; set; }
public string ccourse { get; set; }
[Required(AllowEmptyStrings = false, ErrorMessage = "confirming a password is required")]
[RegularExpression(@"^[a-zA-Z][a-zA-Z0-9]*$", ErrorMessage = "Use only Alphanumeric")]
[Compare("cpassword", ErrorMessage = "Confirm password doesn't match, Type again !")]
public string cconfirmpas { get; set; }
}
我做错了吗?。