public virtual IEnumerable<Claim> FindAll(Predicate<Claim> match) { if (match == null) { throw new ArgumentNullException(nameof(match)); } Contract.EndContractBlock(); foreach (Claim claim in Claims) { if (match(claim)) { yield return claim; } } }
public static async Task<List<string>> GetGroups(ClaimsIdentity claimsId) { if (claimsId.FindFirst("_claim_names") != null && (Json.Decode(claimsId.FindFirst("_claim_names").Value)).groups != null) return await GetGroupsFromGraphAPI(claimsId); return claimsId.FindAll("groups").Select(c => c.Value).ToList(); }