【问题标题】:Setting role when creating new user with ASP.net MVC使用 ASP.net MVC 创建新用户时设置角色
【发布时间】:2023-03-04 20:49:01
【问题描述】:

使用 ASP.net MVC 创建新用户时设置角色

我正在查看默认的 ASP.net MVC 2 控制器。

如何为注册方法中创建的新用户设置角色?

这是否可能只使用一个简单的属性集,还是我必须做一些特别的事情?

【问题讨论】:

    标签: asp.net roles


    【解决方案1】:

    只需将下面的第二行添加到您的 AccountController 中:

    if (createStatus == MembershipCreateStatus.Success)
    {
        FormsService.SignIn(model.UserName, false /* createPersistentCookie */);
        Roles.AddUserToRole(model.UserName, "RoleNameHere");
        return RedirectToAction("Index", "Home");
    }
    

    编辑:如果您尚未创建角色(您只需创建一次。),它将导致异常。

    只需将下面的代码放在 AddUserToRole 方法上方即可。

        if (!Roles.RoleExists("RoleNameHere"))
            Roles.CreateRole("RoleNameHere")
    

    【讨论】:

    • 谢谢你,它帮助了我。由于 accountcontroller 模板已更改,如果有人可以为 ASP.NET MVC 4 更新此答案,那就太好了。我在 Register 方法中调用 WebSecurity.Login 之后添加了新行。 ExternalLoginConfirmation 方法也可能需要更改。
    猜你喜欢
    • 1970-01-01
    • 2010-11-20
    • 1970-01-01
    • 2018-03-26
    • 2013-01-02
    • 2018-11-11
    • 1970-01-01
    • 2013-12-26
    • 1970-01-01
    相关资源
    最近更新 更多