private async Task OnCrSearchChange(ChangeEventArgs e) { var search = e.Value?.ToString().ToLower(); if (search.Length > 2 && !searchingCr) { searchingCr = true; searchedCompReps = await ProgramContext.SearchCompRepByName(search); lastCrSearch = search; } else if (search.Contains(lastCrSearch) && searchingCr) { searchedCompReps = searchedCompReps.Where(x => x.FirstName.ToLower().Contains(search) || x.LastName.ToLower().Contains(search)).ToList(); lastCrSearch = search; } else { searchedCompReps.Clear(); searchingCr = false; lastCrSearch = ""; } this.StateHasChanged(); }