public ELRSearchRules EnsureValidColumnName() { Rule(async q => { ICollection <SearchCriteria> criteria = q.Criteria; var validColumns = (await repos.GetElrColumns()) .Select(info => info.FQColumnName) .ToList(); var allValidColumns = criteria .All(c => validColumns.Contains(c.FQColumnName)); if (!allValidColumns) { criteria .Where(c => !validColumns.Contains(c.FQColumnName)) .Select(c => $"'{c.FQColumnName}' is not a valid Column Name") .Distinct() .ToList() .ForEach(error => Error(error, string.Empty)); } }); return(this); }
public async Task <IActionResult> GetAdvancedSearch() { var results = await repos.GetElrColumns(); return(Ok(results)); }