指定された経度と緯度のドキュメントのコレクションがあるとします。
type is specified:
{
id: ObjectId,
location : {double, double}, /*array, that contains
just longitude and latitude*/
someUsefulData : string
}
ある場所の周囲50マイルのエリアにあるすべてのドキュメントを取得する必要があります。この目的のために、私はそのような方法を使用しています:
// set GetNear() options
var options = new GeoNearOptionsBuilder()
.SetMaxDistance(50) // meens 50 miles
.SetSpherical(true);
// create conditions query
var conditions = Query.NE("someUsefulData ", $ne : {null});
// execute GetNear()
var geoNearResult = collection
.GeoNear(conditions, longitude, latitude, limit, options);
この部分はうまく機能します。
だが。
従来のページングの実装では、最初からいくつかの結果をスキップする必要があります。たぶん、GeoNear()がGeoNearResultを返すという事実を考えると誰かがこれを行う方法を知っています-これはMongoCursorではないので、たとえばSetSkip(20)を使用することはできません。