public Result <QueryOrganizationUsersResult> QueryOrganizationUsers(QueryOrganizationUsersCriteria criteria) { if (criteria == null) { return(new Result <QueryOrganizationUsersResult>(OrganizationUserServiceErrors.InvalidQueryParameters(nameof(criteria)))); } if (criteria.Page == null || criteria.Page.Value <= 0) { criteria.Page = 1; } if (criteria.PageSize == null || criteria.PageSize.Value <= 0) { criteria.PageSize = 10; } string[] sortableFields = { "firstname", "lastname", "email", "username", "createdat", "islocked", "ispendingactivation", "isactive", "lastlogintime" }; if (!sortableFields.Contains(criteria.OrderBy, StringComparer.OrdinalIgnoreCase)) { criteria.OrderBy = string.Empty; } if (string.IsNullOrWhiteSpace(criteria.Direction)) { criteria.Direction = "ASC"; } if (!criteria.Direction.ToUpper().Equals("ASC") && !criteria.Direction.ToUpper().Equals("DESC")) { criteria.Direction = "ASC"; } var result = organizationUserRepository.QueryOrganizationUsers(criteria); return(new Result <QueryOrganizationUsersResult>(result)); }