gpt4 book ai didi

abp - 如何在 abp 框架中播种 AppUser

转载 作者:行者123 更新时间:2023-12-04 17:22:10 28 4
gpt4 key购买 nike

我正在尝试使用 abp.framework(版本 3)为 Entity Framework 数据库播种和 AppUser。我知道如何使用 IdentityUserManager 为 IdentityUser 播种,但找不到任何有关如何为扩展 abpUser 的实体(如 appUser)播种的文档。我在播种时设置密码(用于演示数据目的)。

最佳答案

我能够使用以下方法在种子上添加用户。
此代码添加了 2 个管理员用户和 1 个没有角色的用户。在单独的文件中将此类添加到域项目中,当您运行 DbMigrator 项目时,将创建用户。请注意,这是我所做工作的简化版本,我已将其缩减以回答问题,我还没有在实时项目中尝试过,但您需要的一切都在那里。

using System;
using System.Threading.Tasks;
using Volo.Abp.Data;
using Volo.Abp.DependencyInjection;
using Volo.Abp.Identity;

namespace Your.Project
{
class AddUsersDataSeederContributor
: IDataSeedContributor, ITransientDependency
{
private readonly IdentityUserManager _identityUserManager;

public AddUsersDataSeederContributor(IdentityUserManager identityUserManager)
{
_identityUserManager = identityUserManager;
}

public async Task SeedAsync(DataSeedContext context)
{
// Add users
IdentityUser identityUser1 = new IdentityUser(Guid.NewGuid(), "test_user1", "testuser1@email.com");
await _identityUserManager.CreateAsync(identityUser1, "1q2w3E*");
await _identityUserManager.AddToRoleAsync(identityUser1, "Admin");

IdentityUser identityUser2 = new IdentityUser(Guid.NewGuid(), "test_user2", "testuser2@email.com");
await _identityUserManager.CreateAsync(identityUser2, "1q2w3E*");
await _identityUserManager.AddToRoleAsync(identityUser2, "Admin");

IdentityUser identityUser3 = new IdentityUser(Guid.NewGuid(), "test_user3", "testuser3@email.com");
await _identityUserManager.CreateAsync(identityUser3, "1q2w3E*");
//await _identityUserManager.AddToRoleAsync(identityUser3, "Admin"); // Intentionally not making this user and admin
}
}
}

关于abp - 如何在 abp 框架中播种 AppUser,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65545163/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com