当前位置: 首页 > 知识库问答 >
问题:

MVC 5种子用户和角色

齐高阳
2023-03-14

我一直在玩新的MVC5,我有一些模型,控制器和视图设置使用代码优先迁移。

我的问题是我如何种子用户和角色?我当前在Configuration.cs中的seed方法中种子了一些参考数据。但在我看来,user和roles表是在AccountController首次被点击之前才创建的。

我目前有两个连接字符串,这样我就可以将我的数据和身份验证分离到不同的数据库中。

我如何使用户、角色等表与其他表一起填充?而不是当帐户控制器被击中时?

共有1个答案

郭辉
2023-03-14

下面是常用种子方法的示例:

protected override void Seed(SecurityModule.DataContexts.IdentityDb context)
{
    if (!context.Roles.Any(r => r.Name == "AppAdmin"))
    {
        var store = new RoleStore<IdentityRole>(context);
        var manager = new RoleManager<IdentityRole>(store);
        var role = new IdentityRole { Name = "AppAdmin" };

        manager.Create(role);
    }

    if (!context.Users.Any(u => u.UserName == "founder"))
    {
        var store = new UserStore<ApplicationUser>(context);
        var manager = new UserManager<ApplicationUser>(store);
        var user = new ApplicationUser {UserName = "founder"};

        manager.Create(user, "ChangeItAsap!");
        manager.AddToRole(user.Id, "AppAdmin");
    }
}

我使用了package-manager“update-database”。数据库和所有表都已创建并植入了数据。

 类似资料:
  • 本文向大家介绍ASP.NET MVC5网站开发之用户角色的后台管理1(七),包括了ASP.NET MVC5网站开发之用户角色的后台管理1(七)的使用技巧和注意事项,需要的朋友参考一下 角色是网站中都有的一个功能,用来区分用户的类型、划分用户的权限,这次实现角色列表浏览、角色添加、角色修改和角色删除。 一、业务逻辑层 1、角色模型 Ninesky.Core【右键】->添加->类,输入类名Role。

  • 我无法在我的索引页面上显示经过身份验证的用户的角色和用户名。我用的是百里叶。所有角色用户都保存在内存中。我正在使用Springmvc编写和Web应用程序 我在我的pom中添加了依赖关系.xml 这是我的索引页: 我也希望: 这是我的安全配置类: 我也读了很多关于stackoverlew的问题,但我没有找到答案。我还阅读了官方蒂梅拉夫网站上的指南。 为什么我无法显示:“角色:用户”、“用户名:用户”

  • 我的Java应用程序中有多个用户角色。下面是我的代码: 错误: 因此,所发生的情况是,它加载了用户数据的URL访问权限,但当执行最后一行时,它将/dashboard URL更改为具有ADMIN访问权限。我的角色仍然是数据角色,因此不能访问/dashboard URL。 最后一行似乎覆盖了其他行。再来看看URL特权,如果我删除“/dashboard”,那么当涉及到“/data”URL时,我会得到同样

  • Serene 内置用户、角色和权限管理。 此功能并不是 Serenity 的内置功能,这里仅提供一个示例,所以你可以随时选择实现或使用你自己的用户管理方式,我们将在下面的章节介绍如何实现。 打开 系统管理 / 角色管理,并创建两个角色:Administrators 和 Translators。 点击 新增角色 并输入 Administrators,然后点击保存。 重复相同的步骤创建 Transla

  • 我试图制作一个不和谐机器人,当用户加入语音频道时给他们一个角色,当他们离开时删除这个角色。我知道on_voice_state_update以及如何给用户一个角色,但我不知道如何让哪些用户加入渠道来给他们这个角色。 现在我的代码是对如何使用discord的答案稍加修改的版本。仅当用户加入语音频道时,才会更新\u voice\u state\u上的py事件处理程序。

  • 我正在寻找一种方法来自动更新另一个用户的权限。我似乎找不到一个聪明的方法来做这件事。我能想到的唯一解决方案是每次用户访问页面时从数据库加载用户组,但这可能会对性能造成很大影响。是不是有什么明显的方法让我错过了?