private static void CountTotalEmployees() { var sb = SearchBuilder.Builder().Query(QueryFactory.MatchAllQuery()); var results = esClient.Search(sb, "employees", "employee"); Log(string.Format("Total employees: {0}", results.Total)); }
private static void FilterEmployeesByCompanyId() { var sb = SearchBuilder.Builder(); sb.Filter(FilterFactory.TermFilter("companyId", "5CB0021D-1896-4354-89F4-94B350DE700E".ToLower())); var result = esClient.Search(sb, "employees"); Log(string.Format("Employees in Company 5CB0021D:{0}", result.Total)); }
private static void FilterEmployeesByFavoriteNumbers(int favoriteNumber) { var sb = SearchBuilder.Builder(); var filter = FilterFactory.TermFilter("favoriteNumbers", favoriteNumber); sb.Filter(filter); var results = esClient.Search(sb, "employees", "employee"); Log(string.Format("Employees whose favorite numbers include {0}: {1}", favoriteNumber, results.Total)); }
private static void SearchEmployeesByDescriptionText(int size) { var sb = SearchBuilder.Builder(); sb.Query(QueryFactory.TextQuery("description", "urna eget risus")).Size(size); var result = esClient.Search(sb, "employees", "employee"); Log("Employees whose Description is closest to 'urna eget risus':"); result.Hits.Hits.ForEach(h => Log(string.Format("Score: {0}", h.Score.ToString()))); }
public void SearchDfsQueryThenFetchUsingFactory() { var sb = SearchBuilder.Builder() .From(0) .Size(10) .Field("name") .Query(QueryFactory.MatchAllQuery()); var queryResults = this.ConnectedClient.Search <ElasticSearchProject>(sb, searchType: Nest.SearchType.DfsQueryAndFetch); Assert.True(queryResults.IsValid); Assert.True(queryResults.Documents.Any()); }
private static void GetEmployeesWithFacets() { var sb = SearchBuilder.Builder(); sb.Filter(FilterFactory.TermFilter("companyId", "CC89DE68-61D9-4F16-93C9-30A3FB3818A7".ToLower())); sb.Facet(FacetFactory.TermsFacet("favoriteNumbers").Field("favoriteNumbers")); var result = esClient.Search(sb, "employees", "employee"); //var facet = ((TermFacet)result.Facets["favoriteNumbers"]); var facetItems = result.FacetItems <TermItem>("favoriteNumbers"); foreach (var facetItem in facetItems) { Log(string.Format("Number of matches for facet {0}: {1}", facetItem.Term, facetItem.Count)); } }