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."); } }
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."); } }