Fixed errors on website loading

Fixed the errors that occurred on initial website load by moving the initial user creation in the DBContext and not in the ASP.NET project
This commit is contained in:
Dimitar Todorov
2022-04-01 23:22:57 +03:00
parent b36a4df097
commit 0ab907582c
8 changed files with 30 additions and 56 deletions

View File

@@ -95,7 +95,7 @@ namespace WebApp.Areas.Identity.Pages.Account
ExternalLogins = (await _signInManager.GetExternalAuthenticationSchemesAsync()).ToList();
if (ModelState.IsValid)
{
var user = new User { Id = Guid.NewGuid().ToString(), UserName = Input.UserName, Email = Input.Email, FirstName = Input.FirstName, LastName = Input.LastName, PhoneNumber = Input.PhoneNumber, PersonalNumber = Input.EGN, IsAdmin = Input.IsAdmin};
var user = new User { Id = Guid.NewGuid().ToString(), UserName = Input.UserName, Email = Input.Email, FirstName = Input.FirstName, LastName = Input.LastName, PhoneNumber = Input.PhoneNumber, PersonalNumber = Input.EGN};
var result = await _userManager.CreateAsync(user, Input.Password);
if (result.Succeeded)
{

View File

@@ -68,7 +68,6 @@ namespace API
app.UseAuthentication();
app.UseAuthorization();
CreateUserRoles(serviceProvider).Wait();
app.UseEndpoints(endpoints =>
{
endpoints.MapControllerRoute(
@@ -77,43 +76,5 @@ namespace API
endpoints.MapRazorPages();
});
}
private async System.Threading.Tasks.Task CreateUserRoles(IServiceProvider serviceProvider)
{
var RoleManager = serviceProvider.GetRequiredService<RoleManager<IdentityRole>>();
var UserManager = serviceProvider.GetRequiredService<UserManager<User>>();
string[] roleNames = { "Admin", "User"};
IdentityResult roleResult;
foreach (var roleName in roleNames)
{
var roleCheck = await RoleManager.RoleExistsAsync(roleName);
if (!roleCheck)
{
roleResult = await RoleManager.CreateAsync(new IdentityRole(roleName));
}
}
var user = new User();
user.UserName = "admin";
user.Id = Guid.NewGuid().ToString();
user.FirstName = "Admin";
user.LastName = "Admin";
user.PersonalNumber = "1234567890";
user.PhoneNumber = "0888888888";
user.Email = "admin@admin.admin";
user.IsAdmin = true;
string userPWD = "password";
var _user = await UserManager.FindByNameAsync(user.UserName);
if (_user == null)
{
IdentityResult chkUser = await UserManager.CreateAsync(user, userPWD);
if (chkUser.Succeeded)
{
await UserManager.AddToRoleAsync(user, "Admin");
}
}
}
}
}

View File

@@ -1,6 +1,6 @@
{
"ConnectionStrings": {
"DefaultConnection": "Server=(localdb)\\MSSQLLocalDB;Database=RentACar;Integrated Security=true;"
"DefaultConnection": "Server=.;Database=RentACar;Integrated Security=true;"
},
"Logging": {
"LogLevel": {

View File

@@ -1,6 +1,6 @@
{
"ConnectionStrings": {
"DefaultConnection": "Server=(localdb)\\MSSQLLocalDB;Database=RentACar;Integrated Security=true;"
"DefaultConnection": "Server=.;Database=RentACar;Integrated Security=true;"
},
"Logging": {
"LogLevel": {