【发布时间】:2010-10-29 10:39:43
【问题描述】:
我已经通过使用个人资料提供者扩展会员提供者来实现自定义注册页面。我成功注册了用户。现在我想验证注册页面的字段。内置注册页面具有内置验证消息。 在我的编码中,我没有将模型传递给注册操作,而是传递属性。因此,如果我使用 If(ModelState.IsValid),即使我没有填写任何字段,它也始终为真。但是在它引发异常之后,但是未在页面中显示错误消息。请告诉我我必须做什么。我如何获得验证消息。
我看到 Account Models 类用于注册模型,内置验证条件。所以我也在为我的属性写这样的内容。
提前致谢,
public ActionResult UserRegistration(string FirstName, string LastName, string LoginId, string EmailId, string Password, string ConfirmPassword) {
//int id= int.Parse(ViewData["id"] as string);
string firstName = FirstName;
string lastName = LastName;
string userName = LoginId;
string email = EmailId;
string password = Password;
string confirmPassword = ConfirmPassword;
if (ModelState.IsValid)
{
MembershipCreateStatus status = MembershipService.CreateUser(userName, password, email);
//MembershipCreateStatus user = Membership.CreateUser(userName, password, email);
Roles.AddUserToRole(userName, "User");
UserProfile.NewUser.Initialize(userName, true);
UserProfile.NewUser.FirstName = firstName;
UserProfile.NewUser.LastName = lastName;
if (status == MembershipCreateStatus.Success)
{
UserProfile.NewUser.Save();
FormsService.SignIn(userName, false /* createPersistentCookie */);
return RedirectToAction("CreateAccountConfirmation");
}
else
{
ModelState.AddModelError("", AccountValidation.ErrorCodeToString(status));
}
【问题讨论】:
标签: asp.net asp.net-mvc-2