如何在注册ASP.NET MVC4上收集成员资格,角色和配置文件数据

时间:2012-09-20 22:13:55

标签: asp.net-mvc-4 asp.net-profiles asp.net-roles

在注册页面上收集所有相关信息用户,角色和个人资料信息的最佳方式是什么。我目前的方法是在寄存器模型中设置其他字段:

public class RegisterModel
{
    [Required]
    [Display(Name = "Email")]
    [DataType(DataType.EmailAddress)]
    public string UserName { get; set; }

    [Required]
    [StringLength(100, ErrorMessage = "The {0} must be at least {2} characters long.", MinimumLength = 6)]
    [DataType(DataType.Password)]
    [Display(Name = "Password")]
    public string Password { get; set; }

    [DataType(DataType.Password)]
    [Display(Name = "Confirm password")]
    [Compare("Password", ErrorMessage = "The password and confirmation password do not match.")]
    public string ConfirmPassword { get; set; }

    [Required]
    [Display(Name = "Account type")]
    public string Role { get; set; }
}

请参阅角色作为最后一项。我打算在这里添加个人资料信息。

然后在我的控制器中我这样做。

public ActionResult Register(RegisterModel model)...
 WebSecurity.CreateUserAndAccount(model.UserName, model.Password);
 WebSecurity.Login(model.UserName, model.Password);
 Roles.AddUserToRole(model.UserName, model.Role);

这是否可以传递这些额外的数据元素,即使它们不是UserProfile类的一部分?我正在做的工作,但它似乎错了。

0 个答案:

没有答案