FilterContainer in Elasticsearch NEST 5.0

I am working on Elasticsearch migration from 1.7.1 to 5.0.
I fixed most of the issues in the code after upgrading to 5.0 but I couldn't figure out how to change FilterContainer to work in new version.

Below is my code

 public static List<**FilterContainer**> GetPriceRangeFilters(SearchListCriteria criteria, out List<**FilterContainer**> additionalpricefilters)
            var pricefilters = new List<**FilterContainer**>();
            additionalpricefilters = new List<**FilterContainer**>();
            if (criteria.SearchGlobalSettings.MinimumPriceRange != null && criteria.SearchGlobalSettings.MinimumPriceRange.Length > 0)
                const string fieldName = "itemPrices.webPrice";
                pricefilters.Add((new **FilterDescriptor**<ItemSearchEntry>()).Query(a => a.Range(n => n.OnField(fieldName).GreaterOrEquals(criteria.SearchGlobalSettings.MinimumPriceRange[0].ToString()).
                for (var i = 1; i < criteria.SearchGlobalSettings.MinimumPriceRange.Length; i++)
                    additionalpricefilters.Add((new **FilterDescriptor**<ItemSearchEntry>()).Query(a => a.Range(n => n.OnField(fieldName).
            return pricefilters;

FilterContainer no longer exists in NEST 2.0 onwards, because filters and queries merged in Elasticsearch into queries, with a query or filter context.

Where you would have used FilterContainer, use QueryContainer and then when adding to the search, pass the collection of FilterContainer into a bool query filter clause.

I was able to convert filter containers to Query containers. Still working on indexing issues. Thanks for your help.

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.