2013-04-19 19 views
8

Come posso applicare un geo distance range filter utilizzando NEST? Sembra essere qualcosa comeFiltro intervallo geografico in NEST?

var results = client.Search<MyDataType>(s => s 
.Filter(m => m.GeoDistance(c => c.Location, f => f.Distance(100, GeoUnit.mi))); 

ma come faccio a passare in lat/long del luogo di destinazione?

(domanda simile è stata asked per client Java)

risposta

7

Rispondendo alla mia domanda. Questo funziona:

var results = client.Search<MyDataType>(s => s 
.Filter(m => m.GeoDistance(
    c => c.Location, 
    f => f.Distance("100 mi").Location(40.7, -74.0))); 

Dopo un po 'di debug, ho il sospetto che f.Distance(100, GeoUnit.mi) non ha funzionato a causa di un bug nel nido.

+1

Ehi, Max, la registrazione come un problema su github? https://github.com/Mpdreamz/NEST/issues?state=open –

+1

@MartijnLaarman sicuro! https://github.com/Mpdreamz/NEST/issues/240 – Max