Я заметил, что мои примеры продуктов, временные окна и данные о вознаграждениях добавляются только в том случае, если учетная запись администратора еще не существует.
Код: Выделить всё
public static class SeedMethod
{
public static async Task InitializeAsync(IServiceProvider serviceProvider)
{
var context = serviceProvider.GetRequiredService();
var roleManager = serviceProvider.GetRequiredService();
var userManager = serviceProvider.GetRequiredService();
await context.Database.MigrateAsync();
if (!await roleManager.RoleExistsAsync(""))
{
await roleManager.CreateAsync(new IdentityRole(""));
}
var adminEmail = "adminemail@gmail.com";
var adminPassword = "Admin1!";
var adminUser = await userManager.FindByEmailAsync();
if (adminUser == null)
{
adminUser = new IdentityUser
{
UserName = ,
Email = ,
EmailConfirmed = true
};
var result = await userManager.CreateAsync(adminUser, adminPassword);
if (result.Succeeded)
{
await userManager.AddToRoleAsync(adminUser, "Admin");
}
}
else
{
if (!await userManager.IsInRoleAsync(adminUser, "Admin"))
{
await userManager.AddToRoleAsync(adminUser, "Admin");
}
}
}
}