Пример #1
0
 protected void OnUserAddedToRoleEvent(UserAddedToRoleEvent e)
 {
     if (_roles == null)
     {
         _roles = new List<string>();
     }
     if (!_roles.Contains(e.Role))
     {
         _roles.Add(e.Role);
     }
 }
Пример #2
0
        public void AddToRole(Guid userID, string role)
        {
            var e = new UserAddedToRoleEvent(Guid.NewGuid(), Guid.Empty, Version + 1, DateTime.UtcNow)
            {
                UserID = userID,
                Role = role,
                TimeStamp = DateTime.UtcNow
            };

            ApplyEvent(e);
        }
        public async Task AddUserToRoleAsync(string userId, string roleId)
        {
            var user = await _userManager.Users.FirstOrDefaultAsync(x => x.Id == userId);

            if (user == null)
            {
                throw new UserNotFoundException(userId);
            }

            var role = await _roleManager.Roles.FirstOrDefaultAsync(x => x.Id == roleId);

            if (role == null)
            {
                throw new RoleNotFoundException(roleId);
            }

            await _userManager.AddToRoleAsync(user, role.Name);

            var userAddedToRoleEvent = new UserAddedToRoleEvent(user.Email, role.Name);
            await _dispatcher.Dispatch(userAddedToRoleEvent);
        }