public void SearchAggFilterBucketAggregationWithChildrenNoHits() { var search = new Search { Aggs = new List<IAggs> { new FilterBucketAggregation("globalbucket", new GeoDistanceFilter("location", new GeoPoint(32,42), new DistanceUnitKilometer(10000) )) { Aggs = new List<IAggs> { new MaxMetricAggregation("maxAgg", "lift"), new MinMetricAggregation("minAgg", "lift"), new TopHitsMetricAggregation("topHits") { Size = 3 } } } } }; using (var context = new ElasticsearchContext(ConnectionString, ElasticsearchMappingResolver)) { Assert.IsTrue(context.IndexTypeExists<SearchAggTest>()); var items = context.Search<SearchAggTest>(search, new SearchUrlParameters { SeachType = SeachType.count }); var aggResult = items.PayloadResult.Aggregations.GetComplexValue<GlobalBucketAggregationsResult>("globalbucket"); var max = aggResult.GetSingleMetricSubAggregationValue<double>("maxAgg"); Assert.AreEqual(7, aggResult.DocCount); Assert.AreEqual(2.9, max); } }
public void SearchAggTermsBucketAggregationWithSubTopHitsMetricAggregationWithNoHits() { var search = new Search { Aggs = new List<IAggs> { new TermsBucketAggregation("test_min", "lift") { Aggs = new List<IAggs> { new TopHitsMetricAggregation("topHits") { Size = 5 } } } } }; using (var context = new ElasticsearchContext(ConnectionString, ElasticsearchMappingResolver)) { Assert.IsTrue(context.IndexTypeExists<SearchAggTest>()); var items = context.Search<SearchAggTest>(search, new SearchUrlParameters { SeachType = SeachType.count }); var aggResult = items.PayloadResult.Aggregations.GetComplexValue<TermsBucketAggregationsResult>("test_min"); var hitsForBucket = aggResult.Buckets[0].GetSubAggregationsFromJTokenName<TopHitsMetricAggregationsResult<SearchAggTest>>("topHits"); Assert.AreEqual(3, aggResult.Buckets[0].DocCount); Assert.AreEqual(2.1, hitsForBucket.Hits.HitsResult[0].Source.Lift); } }
public void SearchAggSignificantTermsBucketAggregationPropertiesSet() { var search = new Search { Query = new Query(new MatchAllQuery()), Aggs = new List<IAggs> { new SignificantTermsBucketAggregation("testSignificantTermsBucketAggregation", "details") { BackgroundFilter= new TermFilter("name", "details"), InformationRetrievalRetrieval = new MutualInformation { BackgroundIsSuperset = false, IncludeNegatives = false }, ExecutionHint= ExecutionHint.global_ordinals } } }; using (var context = new ElasticsearchContext(ConnectionString, ElasticsearchMappingResolver)) { Assert.IsTrue(context.IndexTypeExists<SearchAggTest>()); var items = context.Search<SearchAggTest>(search, new SearchUrlParameters { SeachType = SeachType.count }); var aggResult = items.PayloadResult.Aggregations.GetComplexValue<SignificantTermsBucketAggregationsResult>("testSignificantTermsBucketAggregation"); Assert.AreEqual(7, aggResult.DocCount); } }
public void SearchAggGeohashGridBucketAggregationWithSubAggSignificantTermsBucketAggregationWithNoHits() { var search = new Search { Aggs = new List<IAggs> { new GeohashGridBucketAggregation("termsDetails", "location") { Aggs = new List<IAggs> { new SignificantTermsBucketAggregation("testSignificantTermsBucketAggregation", "details") }, Precision = 2 } } }; using (var context = new ElasticsearchContext(ConnectionString, ElasticsearchMappingResolver)) { Assert.IsTrue(context.IndexTypeExists<SearchAggTest>()); var items = context.Search<SearchAggTest>(search, new SearchUrlParameters { SeachType = SeachType.count }); var termsAggResult = items.PayloadResult.Aggregations.GetComplexValue<TermsBucketAggregationsResult>("termsDetails"); var significantAggResult = termsAggResult.Buckets[0].GetSubAggregationsFromJTokenName<SignificantTermsBucketAggregationsResult>("testSignificantTermsBucketAggregation"); Assert.AreEqual(3, significantAggResult.Buckets[0].BgCount); } }
public void SearchAggTermsBucketAggregationnWithChildrenSubAggNoHits() { var search = new Search { Aggs = new List<IAggs> { new TermsBucketAggregation("test_min", "info") { Aggs = new List<IAggs> { new ChidrenBucketAggregation("childrenAgg", "testobjchildsep") { Aggs = new List<IAggs> { new TermsBucketAggregation("infoAgg", "info") } } } } } }; using (var context = new ElasticsearchContext(ConnectionString, ElasticsearchMappingResolver)) { Assert.IsTrue(context.IndexTypeExists<TestObjParentSep>()); Assert.IsTrue(context.IndexTypeExists<TestObjChildSep>()); var items = context.Search<TestObjParentSep>(search, new SearchUrlParameters { SeachType = SeachType.count }); var aggResult = items.PayloadResult.Aggregations.GetComplexValue<TermsBucketAggregationsResult>("test_min"); Assert.AreEqual(3, aggResult.Buckets[0].DocCount); } }
public void SearchQueryBoolQuery() { var search = new Search { Query = new Query( new BoolQuery { Must = new List<IQuery> { new RangeQuery("id") { GreaterThanOrEqualTo = "2", LessThan = "3", LessThanOrEqualTo = "2", GreaterThan = "1" } }, MustNot = new List<IQuery> { new RangeQuery("id") {GreaterThan="34"} }, Should = new List<IQuery> { new TermQuery("name", "two") }, Boost=2.0, DisableCoord= false, MinimumShouldMatch= "2" } ) }; using (var context = new ElasticsearchContext(ConnectionString, ElasticsearchMappingResolver)) { context.TraceProvider = new ConsoleTraceProvider(); Assert.IsTrue(context.IndexTypeExists<SearchTest>()); var items = context.Search<SearchTest>(search); Assert.AreEqual(2, items.PayloadResult.Hits.HitsResult[0].Source.Id); } }
public void SearchQueryMoreLikeThisQuery() { var search = new Search { Query = new Query( new MoreLikeThisQuery { Fields = new List<string> {"moreinfo"}, LikeText = "yes one", MinTermFreq = 1, Boost = 50, MinDocFreq = 1, PercentTermsToMatch = 0.01 } ) }; using (var context = new ElasticsearchContext(ConnectionString, ElasticsearchMappingResolver)) { context.TraceProvider = new ConsoleTraceProvider(); Assert.IsTrue(context.IndexTypeExists<MoreLikeThisTestDto>()); var items = context.Search<MoreLikeThisTestDto>(search); Assert.AreEqual(2, items.PayloadResult.Hits.Total); } }
public void SearchAggScriptedMetricAggregationWithParamsWithNoHits() { var search = new Search { Aggs = new List<IAggs> { new ScriptedMetricAggregation("topScriptedMetricAggregation", "_agg.transactions.add(doc['lift'].value * _agg.times)") { InitScript= "_agg['transactions'] = []", CombineScript= "script_calculated = 0; for (t in _agg.transactions) { script_calculated += t }; return script_calculated", ReduceScript= "script_calculated = 0; for (a in _aggs) { script_calculated += a }; return script_calculated", Params = new ParamsForScript("_agg") { Params = new List<ScriptParameter> { new ScriptParameter("times", 1.4), } } } } }; using (var context = new ElasticsearchContext(ConnectionString, ElasticsearchMappingResolver)) { Assert.IsTrue(context.IndexTypeExists<SearchAggTest>()); var items = context.Search<SearchAggTest>(search, new SearchUrlParameters { SeachType = SeachType.count }); var aggResult = items.PayloadResult.Aggregations.GetSingleMetricAggregationValue<double>("topScriptedMetricAggregation"); Assert.AreEqual(22.82, aggResult); } }
public void SearchAggDateRangesBucketAggregationKeyedWithNoHits() { var search = new Search { Aggs = new List<IAggs> { new DateRangeBucketAggregation("testRangesBucketAggregation", "dateofdetails", "MM-yyy", new List<RangeAggregationParameter<string>> { new ToRangeAggregationParameter<string>("now-8M/M"), new ToFromRangeAggregationParameter<string>("now-8M/M", "now-10M/M"), new FromRangeAggregationParameter<string>("now-10M/M") { Key = "keyName" } }) { Keyed= true } } }; using (var context = new ElasticsearchContext(ConnectionString, ElasticsearchMappingResolver)) { Assert.IsTrue(context.IndexTypeExists<SearchAggTest>()); var items = context.Search<SearchAggTest>(search, new SearchUrlParameters { SeachType = SeachType.count }); var aggResult = items.PayloadResult.Aggregations.GetComplexValue<RangesNamedBucketAggregationsResult>("testRangesBucketAggregation"); var test = aggResult.Buckets.GetSubAggregationsFromJTokenName<RangeBucket>("keyName"); Assert.AreEqual(7, test.DocCount); } }
public void SearchQueryQueryStringQueryAllProperties() { var search = new Search { Query = new Query(new QueryStringQuery("one document") { AllowLeadingWildcard = true, Analyzer = LanguageAnalyzers.German, AnalyzeWildcard = false, AutoGeneratePhraseQueries = false, Boost = 2.1, DefaultField = "_all", DefaultOperator = QueryDefaultOperator.OR, EnablePositionIncrements = true, Fuzziness = 0.5, FuzzyMaxExpansions = 49, FuzzyPrefixLength = 0, Lenient = false, Locale = "ROOT" }) }; using (var context = new ElasticsearchContext(ConnectionString, ElasticsearchMappingResolver)) { Assert.IsTrue(context.IndexTypeExists<SearchTest>()); var items = context.Search<SearchTest>(search); Assert.AreEqual(2, items.PayloadResult.Hits.Total); } }
public void SearchAggTermsBucketAggregationWithOrderSumSubSumAggNoHits() { var search = new Search { Aggs = new List<IAggs> { new TermsBucketAggregation("test_min", "lift") { Order= new OrderAgg("childAggSum", OrderEnum.asc), Aggs = new List<IAggs> { new SumMetricAggregation("childAggSum", "lift"), new AvgMetricAggregation("childAggAvg", "lift"), new GlobalBucketAggregation("test") } } } }; using (var context = new ElasticsearchContext(ConnectionString, ElasticsearchMappingResolver)) { Assert.IsTrue(context.IndexTypeExists<SearchAggTest>()); var items = context.Search<SearchAggTest>(search, new SearchUrlParameters { SeachType = SeachType.count }); var aggResult = items.PayloadResult.Aggregations.GetComplexValue<TermsBucketAggregationsResult>("test_min"); var bucketchildAggSum = aggResult.Buckets[0].GetSingleMetricSubAggregationValue<double>("childAggSum"); var bucketchildAggAvg = aggResult.Buckets[0].GetSingleMetricSubAggregationValue<double>("childAggAvg"); Assert.AreEqual(1, aggResult.Buckets[0].DocCount); Assert.AreEqual(1.7, bucketchildAggSum); Assert.AreEqual(1.7, bucketchildAggAvg); } }
public void SearchAggGeohashGridBucketAggregationWithTopHitsSubWithNoHits() { var search = new Search { Aggs = new List<IAggs> { new GeohashGridBucketAggregation("testGeohashGridBucketAggregation", "location") { Aggs = new List<IAggs> { new TopHitsMetricAggregation("tophits") } } } }; using (var context = new ElasticsearchContext(ConnectionString, ElasticsearchMappingResolver)) { Assert.IsTrue(context.IndexTypeExists<SearchAggTest>()); var items = context.Search<SearchAggTest>(search, new SearchUrlParameters { SeachType = SeachType.count }); var aggResult = items.PayloadResult.Aggregations.GetComplexValue<GeohashGridBucketAggregationsResult>("testGeohashGridBucketAggregation"); var topHits = aggResult.Buckets[0].GetSubAggregationsFromJTokenName<TopHitsMetricAggregationsResult<SearchAggTest>>("tophits"); Assert.AreEqual(3, aggResult.Buckets[0].DocCount); Assert.AreEqual(3, topHits.Hits.Total); } }
public void SearchQueryMatchPhasePrefixTest() { var search = new Search { Query = new Query(new MatchPhasePrefixQuery("name", "one") { MaxExpansions = 500, Boost = 1.1, MinimumShouldMatch = "50%", Fuzziness = 1 }) }; using (var context = new ElasticsearchContext(ConnectionString, ElasticsearchMappingResolver)) { Assert.IsTrue(context.IndexTypeExists<SearchTest>()); var items = context.Search<SearchTest>(search); Assert.AreEqual(1, items.PayloadResult.Hits.HitsResult[0].Source.Id); } }
public void SearchQueryMatchTest() { var search = new Search { Query = new Query(new MatchQuery("name", "document one") { Boost = 1.1, Fuzziness = 1 }) }; using (var context = new ElasticsearchContext(ConnectionString, ElasticsearchMappingResolver)) { Assert.IsTrue(context.IndexTypeExists<SearchTest>()); var items = context.Search<SearchTest>(search); Assert.AreEqual(1, items.PayloadResult.Hits.HitsResult[0].Source.Id); } }
public void SearchQueryQueryStringQuery() { var search = new Search { Query = new Query(new QueryStringQuery("one document")) }; using (var context = new ElasticsearchContext(ConnectionString, ElasticsearchMappingResolver)) { Assert.IsTrue(context.IndexTypeExists<SearchTest>()); var items = context.Search<SearchTest>(search); Assert.AreEqual(2, items.PayloadResult.Hits.Total); } }
public void SearchQueryConstantScoreQueryWithQuery() { var search = new Search { Query = new Query(new ConstantScoreQuery(new TermQuery("name", "two")){Boost = 2.0}) }; using (var context = new ElasticsearchContext(ConnectionString, ElasticsearchMappingResolver)) { Assert.IsTrue(context.IndexTypeExists<SearchTest>()); var items = context.Search<SearchTest>(search); Assert.AreEqual(2, items.PayloadResult.Hits.HitsResult[0].Source.Id); } }
public void SearchFilterMatchAllTest() { var search = new Search { Filter = new Filter(new MatchAllFilter { Boost = 1.1 }) }; using (var context = new ElasticsearchContext(ConnectionString, ElasticsearchMappingResolver)) { Assert.IsTrue(context.IndexTypeExists<SearchTest>()); var items = context.Search<SearchTest>(search); Assert.AreEqual(1, items.PayloadResult.Hits.HitsResult[0].Source.Id); } }
public void SearchQueryMatchPhaseTest() { var search = new Search { Query = new Query(new MatchPhaseQuery("name", "one") { Analyzer = LanguageAnalyzers.German, Slop = 1, Operator = Operator.and, CutoffFrequency = 0.2, ZeroTermsQuery = ZeroTermsQuery.none, Boost = 1.1, Fuzziness = 1 }) }; using (var context = new ElasticsearchContext(ConnectionString, ElasticsearchMappingResolver)) { Assert.IsTrue(context.IndexTypeExists<SearchTest>()); var items = context.Search<SearchTest>(search); Assert.AreEqual(1, items.PayloadResult.Hits.HitsResult[0].Source.Id); } }
public void SearchQueryMultiMatchAllTest() { var search = new Search { Query = new Query(new MultiMatchQuery("document") { MultiMatchType = MultiMatchType.most_fields, TieBreaker = 0.5, Fields = new List<string> { "name", "details" } }) }; using (var context = new ElasticsearchContext(ConnectionString, ElasticsearchMappingResolver)) { Assert.IsTrue(context.IndexTypeExists<SearchTest>()); var items = context.Search<SearchTest>(search); Assert.AreEqual(1, items.PayloadResult.Hits.HitsResult[0].Source.Id); } }
public void SearchAggAvgAggregationNoHits() { var search = new Search { Aggs = new List<IAggs>{ new AvgMetricAggregation("test_avg", "lift") }}; using (var context = new ElasticsearchContext(ConnectionString, ElasticsearchMappingResolver)) { Assert.IsTrue(context.IndexTypeExists<SearchAggTest>()); var items = context.Search<SearchAggTest>(search, new SearchUrlParameters { SeachType = SeachType.count }); var aggResult = items.PayloadResult.Aggregations.GetSingleMetricAggregationValue<double>("test_avg"); Assert.AreEqual("2.33", Math.Round(aggResult, 2).ToString(CultureInfo.InvariantCulture)); } }
public List<GeographicalRegion> GetGeographicalRegions() { List<GeographicalRegion> geographicalRegions = new List<GeographicalRegion>(); var search = new Search { Size = 0, Aggs = new List<IAggs> { new TermsBucketAggregation("getgeographicalregions", "geographicalregion") { Aggs = new List<IAggs> { new SumMetricAggregation("countCases", "numberofcaseshigh"), new SumMetricAggregation("countDeaths", "numberofdeathshigh") } } } }; using (var context = new ElasticsearchContext(_connectionString, _elasticsearchMappingResolver)) { var items = context.Search<SnakeBites>(search); try { var aggResult = items.PayloadResult.Aggregations.GetComplexValue<TermsBucketAggregationsResult>("getgeographicalregions"); foreach (var bucket in aggResult.Buckets) { var cases = Math.Round(bucket.GetSingleMetricSubAggregationValue<double>("countCases"), 2); var deaths = Math.Round(bucket.GetSingleMetricSubAggregationValue<double>("countDeaths"), 2); geographicalRegions.Add( new GeographicalRegion { Countries = bucket.DocCount, Name = bucket.Key.ToString(), NumberOfCasesHigh = cases, NumberOfDeathsHigh = deaths, DangerHigh = (deaths > 1000) }); } } catch (Exception ex) { Console.WriteLine(ex.Message); } } return geographicalRegions; }
public void SearchQuerySpanFirstQueryWithSpanTermQuery() { var search = new Search { Query = new Query(new SpanFirstQuery(new SpanTermQuery("name", "one"), 3)) }; using (var context = new ElasticsearchContext(ConnectionString, ElasticsearchMappingResolver)) { context.TraceProvider = new ConsoleTraceProvider(); Assert.IsTrue(context.IndexTypeExists<SearchTest>()); var items = context.Search<SearchTest>(search); Assert.AreEqual(1, items.PayloadResult.Hits.Total); } }
private Search BuildQueryStringSearch(string term) { var names = ""; if (term != null) { names = term.Replace("+", " OR *"); } var search = new ElasticsearchCRUD.Model.SearchModel.Search { Query = new Query(new QueryStringQuery(names + "*")) }; return(search); }
public void SearchAggDateHistogramBucketAggregationWithNoHits() { var search = new Search { Aggs = new List<IAggs> { new DateHistogramBucketAggregation("testHistogramBucketAggregation", "dateofdetails", new TimeUnitMonth(1)) } }; using (var context = new ElasticsearchContext(ConnectionString, ElasticsearchMappingResolver)) { Assert.IsTrue(context.IndexTypeExists<SearchAggTest>()); var items = context.Search<SearchAggTest>(search, new SearchUrlParameters { SeachType = SeachType.count }); var aggResult = items.PayloadResult.Aggregations.GetComplexValue<DateHistogramBucketAggregationsResult>("testHistogramBucketAggregation"); Assert.AreEqual(1, aggResult.Buckets[0].DocCount); } }
public void SearchAggSignificantTermsBucketAggregationWithNoHits() { var search = new Search { Aggs = new List<IAggs> { new SignificantTermsBucketAggregation("testSignificantTermsBucketAggregation", "details") } }; using (var context = new ElasticsearchContext(ConnectionString, ElasticsearchMappingResolver)) { Assert.IsTrue(context.IndexTypeExists<SearchAggTest>()); var items = context.Search<SearchAggTest>(search, new SearchUrlParameters { SeachType = SeachType.count }); var aggResult = items.PayloadResult.Aggregations.GetComplexValue<SignificantTermsBucketAggregationsResult>("testSignificantTermsBucketAggregation"); Assert.AreEqual(7, aggResult.DocCount); } }
public void SearchQueryQueryStringQueryMultipleFields() { var search = new Search { Query = new Query(new QueryStringQuery("one document") { Fields = new List<string> { "name", "details" }, TieBreaker = 1, UseDisMax = true }) }; using (var context = new ElasticsearchContext(ConnectionString, ElasticsearchMappingResolver)) { Assert.IsTrue(context.IndexTypeExists<SearchTest>()); var items = context.Search<SearchTest>(search); Assert.AreEqual(2, items.PayloadResult.Hits.Total); } }
public void SearchFilteredQueryFilterLimit() { var search = new Search { Query = new Query( new Filtered( new Filter( new LimitFilter(1)) ) ) }; using (var context = new ElasticsearchContext(ConnectionString, ElasticsearchMappingResolver)) { Assert.IsTrue(context.IndexTypeExists<SearchTest>()); var items = context.Search<SearchTest>(search); Assert.AreEqual(1, items.PayloadResult.Hits.HitsResult[0].Source.Id); } }
public void SearchQueryCommonTermsQueryLikeBoolMatch() { var search = new Search { Query = new Query( new CommonTermsQuery("details", "leave it alone", 0.001) { LowFreqOperator = QueryDefaultOperator.AND } ) }; using (var context = new ElasticsearchContext(ConnectionString, ElasticsearchMappingResolver)) { context.TraceProvider = new ConsoleTraceProvider(); Assert.IsTrue(context.IndexTypeExists<SearchTest>()); var items = context.Search<SearchTest>(search); Assert.AreEqual(1, items.PayloadResult.Hits.Total); } }
public void SearchAggCardinalityMetricAggregationNoHits() { var search = new Search { Aggs = new List<IAggs> { new CardinalityMetricAggregation("testCardinalityMetricAggregation", "lift") { Rehash= false, PrecisionThreshold= 100 } } }; using (var context = new ElasticsearchContext(ConnectionString, ElasticsearchMappingResolver)) { Assert.IsTrue(context.IndexTypeExists<SearchAggTest>()); var items = context.Search<SearchAggTest>(search, new SearchUrlParameters { SeachType = SeachType.count }); var aggResult = items.PayloadResult.Aggregations.GetSingleMetricAggregationValue<double>("testCardinalityMetricAggregation"); Assert.AreEqual(2, Math.Round(aggResult, 2)); } }
public void SearchAggNestedBucketAggregationWithNoHits() { var testSkillParentObject = new NestedCollectionTest { CreatedSkillParent = DateTime.UtcNow, UpdatedSkillParent = DateTime.UtcNow, DescriptionSkillParent = "A test entity description", Id = 8, NameSkillParent = "cool", SkillChildren = new Collection<SkillChild> { _entitiesForSkillChild[0], _entitiesForSkillChild[1], _entitiesForSkillChild[2] } }; using (var context = new ElasticsearchContext(ConnectionString, _elasticsearchMappingResolver)) { context.IndexCreate<NestedCollectionTest>(); Thread.Sleep(1200); context.AddUpdateDocument(testSkillParentObject, testSkillParentObject.Id); var ret = context.SaveChanges(); Assert.AreEqual(ret.Status, HttpStatusCode.OK); } Thread.Sleep(1200); var search = new Search { Aggs = new List<IAggs> { new NestedBucketAggregation("nestedagg", "skillchildren") } }; using (var context = new ElasticsearchContext(ConnectionString, _elasticsearchMappingResolver)) { Assert.IsTrue(context.IndexTypeExists<NestedCollectionTest>()); var items = context.Search<NestedCollectionTest>(search, new SearchUrlParameters { SeachType = SeachType.count }); var aggResult = items.PayloadResult.Aggregations.GetComplexValue<NestedBucketAggregationsResult>("nestedagg"); Assert.AreEqual(3, aggResult.DocCount); } }
public void SearchAggDateHistogramBucketAggregationWithPropertiesWithTopHitsAggWithNoHits() { var search = new Search { Aggs = new List<IAggs> { new DateHistogramBucketAggregation("testHistogramBucketAggregation", "dateofdetails", new TimeUnitMonth(1)) { Aggs = new List<IAggs> { new TopHitsMetricAggregation("tophits") }, MinDocCount=2, Order= new OrderAgg("dateofdetails", OrderEnum.desc), ExtendedBounds= new ExtendedBounds { Max= 1000000, Min = 0 }, PostOffset= "10d", PreOffset= "1d", Format = "yyyy-MM-dd", PostZone = "02:00", PreZone = "-02:00", } } }; using (var context = new ElasticsearchContext(ConnectionString, ElasticsearchMappingResolver)) { Assert.IsTrue(context.IndexTypeExists<SearchAggTest>()); var items = context.Search<SearchAggTest>(search, new SearchUrlParameters { SeachType = SeachType.count }); var aggResult = items.PayloadResult.Aggregations.GetComplexValue<DateHistogramBucketAggregationsResult>("testHistogramBucketAggregation"); var tophits = aggResult.Buckets[0].GetSubAggregationsFromJTokenName<TopHitsMetricAggregationsResult<SearchAggTest>>("tophits"); Assert.AreEqual(3, aggResult.Buckets[0].DocCount); Assert.AreEqual(3, tophits.Hits.Total); } }
public IEnumerable <SkillWithListOfDetails> QueryString(string term) { var names = ""; if (term != null) { names = term.Replace("+", " OR *"); } var search = new ElasticsearchCRUD.Model.SearchModel.Search { From = 0, Size = 10, Query = new Query(new QueryStringQuery(names + "*")) }; IEnumerable <SkillWithListOfDetails> results; using (var context = new ElasticsearchContext(ConnectionString, _elasticSearchMappingResolver)) { results = context.Search <SkillWithListOfDetails>(search).PayloadResult.Hits.HitsResult.Select(t => t.Source); } return(results); }