예제 #1
0
 public async Task <Role> GetRoleByName(string name)
 {
     if (ValidateQuery(await _roleTable.SelectByName(name), out Role role))
     {
         return(role);
     }
     else
     {
         throw new ArgumentException("Provided role name could not be found.");
     }
 }
예제 #2
0
        public async Task <List <User> > GetUsersByRole(string rolename)
        {
            if (ValidateQuery(await _roleTable.SelectByName(rolename), out Role role))
            {
                List <UserRoleModel> userRoles = await _userRoleTable.SelectByRole(role.Id);

                List <User> users = new List <User>();

                foreach (UserRoleModel item in userRoles)
                {
                    if (ValidateQuery(await _userTable.SelectById(item.UserId), out User user))
                    {
                        users.Add(await PopulateRoles(user));
                    }
                }

                return(users);
            }
            else
            {
                throw new ArgumentException("No role found with specified name.");
            }
        }