How can I add admin user using OnModelCreating in ASP.NET Identity?
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder.Entity<IdentityUser>
(
user.UserName = "admin";
user.Email = "[email protected]";
string userPassword = "Admin123#";
).ToTable("AspNetUsers");
}
Try this :
protected override void OnModelCreating(ModelBuilder builder)
{
base.OnModelCreating(builder);
// any unique string id
const string ADMIN_ID = "a18be9c0-aa65-4af8-bd17-00bd9344e575";
const string ROLE_ID = "ad376a8f-9eab-4bb9-9fca-30b01540f445";
builder.Entity<IdentityRole>().HasData(new IdentityRole
{
Id = ROLE_ID,
Name = "admin",
NormalizedName = "admin"
});
var hasher = new PasswordHasher<IdentityUser>();
builder.Entity<IdentityUser>().HasData(new IdentityUser
{
Id = ADMIN_ID,
UserName = "admin",
NormalizedUserName = "admin",
Email = "[email protected]",
NormalizedEmail = "[email protected]",
EmailConfirmed = false,
PasswordHash = hasher.HashPassword(null, "Admin123#"),
SecurityStamp = string.Empty
});
builder.Entity<IdentityUserRole<string>>().HasData(new IdentityUserRole<string>
{
RoleId = ROLE_ID,
UserId = ADMIN_ID
});
}
Reference :
https://inneka.com/programming/c/how-to-seed-an-admin-user-in-ef-core-2-1-0/
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With