Beispiel #1
0
        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));
        }
Beispiel #2
0
        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));
        }
Beispiel #3
0
        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));
        }
Beispiel #4
0
        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())));
        }
Beispiel #5
0
        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());
        }
Beispiel #6
0
        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));
            }
        }