public async Task <IEnumerable <string> > FindMatches( IReadonlyObjectDatabase <string> objectDatabase, string searchText, uint maxSuggestions) { return((await objectDatabase.GetManyAsync()) .Where(str => Match(str, searchText)) .Take((int)maxSuggestions)); }
public async Task <IEnumerable <TDataServiceDefinition> > FindMatches( IReadonlyObjectDatabase <TDataServiceDefinition> objectDatabase, string searchText, uint maxSuggestions) { var query = $"Data.Id LIKE '%{searchText}%'"; return(await objectDatabase.GetManyAsync(query, limit : maxSuggestions)); }
public Task <IEnumerable <JObject> > FindMatches( IReadonlyObjectDatabase <JObject> objectDatabase, string searchText, uint maxSuggestions) { var normalizedSearchText = SearchTextNormalizer.Normalize(searchText); var query = $"Data.Id LIKE '%{normalizedSearchText}%'"; return(objectDatabase.GetManyAsync(query, limit: maxSuggestions)); }
public async Task <IEnumerable <DataSet> > FindMatches( IReadonlyObjectDatabase <DataSet> objectDatabase, string searchText, uint maxSuggestions) { var normalizedSearchText = SearchTextNormalizer.Normalize(searchText); var searchQuery = $"Data.{nameof(DataSet.Id)} LIKE '%{normalizedSearchText}%'"; return(await objectDatabase.GetManyAsync(searchQuery, limit : maxSuggestions)); }
public async Task <IEnumerable <UserProfile> > FindMatches( IReadonlyObjectDatabase <UserProfile> objectDatabase, string searchText, uint maxSuggestions) { var allUserProfiles = await objectDatabase.GetManyAsync(); // User profile SQL queries is not supported // and hence we have to do the search ourself return(allUserProfiles.Where(user => Match(user, searchText))); }
public async Task <IEnumerable <DataCollectionProtocolParameter> > FindMatches( IReadonlyObjectDatabase <DataCollectionProtocolParameter> objectDatabase, string searchText, uint maxSuggestions) { var normalizedSearchText = SearchTextNormalizer.Normalize(searchText); var query = $"Data.Name LIKE '%{normalizedSearchText}%'"; return(await objectDatabase.GetManyAsync(query, limit : maxSuggestions)); }
public async Task <List <UserProfileViewModel> > LoadAsync() { var userProfileViewModels = new List <UserProfileViewModel>(); var userProfiles = await userDatabase.GetManyAsync(); foreach (var userProfile in userProfiles) { userProfileViewModels.Add(await CreateUserProfileViewModel(userProfile)); } return(userProfileViewModels); }