Ho una sfida interessante, che credo sia una risposta facile a."Dinamicamente" creazione di un filtro in NEST
So che i filtri NEST funzionano correttamente quando sintatticamente si fa qualcosa di simile:
var andFilter = FilterFactory.AndFilter(
FilterFactory.TermFilter("name.first", "shay1"),
FilterFactory.TermFilter("name.first", "shay4")
);
miei servizi di base dovrebbero consentire a un chiamante di passare in una sorta di lista enumerabile di elementi da filtrare.
mi piacerebbe fondamentalmente piace essere in grado di programmazione realizzare qualcosa di simile (filtri viene passato nel metodo):
var andFilter = new FilterDescriptor();
foreach (var filter in filters)
{
andFilter = filter concatenated to andFilter
}
In altre parole se ho passato in una serie di {{ "first.name" , "Joe"}, { "first.name", "jim"}, { "first.name", "Frank"}} mi piacerebbe produrre l'equivalente di
var andFilter = FilterFactory.AndFilter(
FilterFactory.TermFilter("name.first", "joe"),
FilterFactory.TermFilter("name.first", "joe"),
FilterFactory.TermFilter("name.first", "frank")
);