public IEnumerable <SearchResult> Search(EPiServer.Shell.Search.Query query)
        {
            var azureSearchQuery = CreateSearchQuery(query, _contentLanguageAccessor.Language);
            var searchResults    = _azureSearchService.Search <T>(azureSearchQuery);

            return(searchResults.Results.Select(MapAzureSearchResult));
        }
        private static AzureSearchQuery CreateSearchQuery(EPiServer.Shell.Search.Query query, CultureInfo currentCulture)
        {
            var queryBuilder = new AzureSearchQueryBuilder()
                               .Top(query.MaxResults)
                               .SearchTerm(query.SearchQuery);

            if (query.FilterOnCulture)
            {
                queryBuilder.Filter(AzureSearchQueryFilter.Equals(nameof(ContentDocument.ContentLanguage),
                                                                  currentCulture.Name));
            }

            return(queryBuilder.Build());
        }