Esempio n. 1
0
        public static async Task InitializeAsync(UserManager <User> userManager, RoleManager <Role> roleManager)
        {
            _userManager = userManager;
            _roleManager = roleManager;
            // admin login and pass
            string adminEmail = "*****@*****.**";
            string password   = "******";

            // adding roles
            if (await roleManager.FindByNameAsync("admin") == null)
            {
                await roleManager.CreateAsync(new Role("admin"));
            }
            if (await roleManager.FindByNameAsync("user") == null)
            {
                await roleManager.CreateAsync(new Role("user"));
            }
            if (await roleManager.FindByNameAsync("moderator") == null)
            {
                await roleManager.CreateAsync(new Role("moderator"));
            }
            // adding admin
            AddingUser admin = new AddingUser {
                Password = "******", UserName = "******"
            };
            IdentityResult result = await AddUserAccount(admin);

            if (result.Succeeded)
            {
                await AppointRoleToUser(admin, "admin");
            }

            // adding other users
            List <AddingUser> addingUsers = new List <AddingUser>
            {
                new AddingUser {
                    UserName = "******", Password = "******"
                },
                new AddingUser {
                    UserName = "******", Password = "******"
                },
                new AddingUser {
                    UserName = "******", Password = "******"
                },
            };

            foreach (var item in addingUsers)
            {
                IdentityResult resultOfAdd = await AddUserAccount(item);

                if (resultOfAdd.Succeeded)
                {
                    await AppointRoleToUser(item, "user");
                }
            }
        }
Esempio n. 2
0
        private static async Task <IdentityResult> AddUserAccount(AddingUser user)
        {
            IdentityResult result;
            User           addedUser = new User {
                Email = user.UserName, UserName = user.UserName
            };

            if (await _userManager.FindByNameAsync(user.UserName) == null)
            {
                result = await _userManager.CreateAsync(addedUser, user.Password);
            }
            else
            {
                IdentityError identityError = new IdentityError {
                    Description = "User don't adding"
                };
                result = IdentityResult.Failed(identityError);
            }
            return(result);
        }
Esempio n. 3
0
        private static async Task AppointRoleToUser(AddingUser user, string role)
        {
            User userForRole = await _userManager.FindByEmailAsync(user.UserName);

            await _userManager.AddToRolesNVAsync(userForRole, new string[] { role });
        }