在“AspNet Membership”中用户注册时分配角色

时间:2015-02-02 13:31:16

标签: asp.net asp.net-mvc-4 razor asp.net-membership asp.net-roles

在我的AspNetRoles表中,我有两个角色

ID |名称

1 | HEI_Admin

2 | HEI_User

这是我的View Class下拉列表,用于在用户注册时选择用户角色

                     <div>
                        @Html.DropDownListFor(model => model.RoleName,
                                                      new SelectList(
                                                      new List<Object>{ 
                                                      new { value = "" , text = "Select"  },
                                                      new { value = "HEC_Admin" , text = "Higher Edcuation Council" },
                                                      new { value = "HEI_User" , text = "Higher Education Institute"}
                                                      }, "value", "text", "-"), new { id = "allDay" })
                        @Html.ValidationMessageFor(model => model.RoleName)

                    </div>

这是以上下拉列表的前端Javascript

    <script>
        $("#allDay").change(function () {
            if ($(this).val() == "HEC_Admin") {
                $("#University").attr("disabled", true);
                $("#Direct_Number").attr("disabled", true);
                $("#Mobile").attr("disabled", true);
            }
            else if($(this).val() == "HEI_User") {
                $("#University").attr("disabled", false);
                $("#Direct_Number").attr("disabled", false);
                $("#Mobile").attr("disabled", false);
            }

        });

    </script>

这是我称之为模型类

的地方
  public class RegisterViewModel
  {
     // rest of 

     public string Name { get; set; }
  }

这是我在用户注册

时为用户分配角色的地方
 public async Task<ActionResult> Register(RegisterViewModel model)
        {
            if (ModelState.IsValid)
            {
                var user = new ApplicationUser() { UserName = model.UserName} ;
                user.Email = model.Email;


                user.ConfirmedEmail = false;

                Roles.AddUserToRole(model.UserName, model.Name);

                var result = await UserManager.CreateAsync(user, model.Password);
                if (result.Succeeded)
                {

当我使用网页会员资格时,此程序运作正常,但在这里我使用的是AspNet会员资格,这里我收到了以下错误

建立与SQL Server的连接时发生与网络相关或特定于实例的错误。服务器未找到或无法访问。验证实例名称是否正确,以及SQL Server是否配置为允许远程连接

0 个答案:

没有答案