/// <summary> /// WhereWithinGeoBox查询语法,查询一个矩形范围内的信息 /// </summary> /// <param name="column">字段</param> /// <param name="southwest">矩形左下角的坐标点</param> /// <param name="northeast">矩形右上角的坐标点 </param> /// <returns>返回当前对象</returns> public BmobQuery WhereWithinGeoBox(String column, BmobGeoPoint southwest, BmobGeoPoint northeast) { _where.Composite(column, "$within", new Dictionary <String, object>() { { "$box", BmobArrays.wrap(southwest, northeast) } }); return(this); }
// 为了限定搜索的最大举例范围,需要加入$maxDistanceInMiles和$maxDistanceInKilometers或者$maxDistanceInRadians参数来限定.比如要找的半径在10公里内的话 /// <summary> /// WhereWithinDistance查询语法,查询多少公里之内的数据 /// </summary> /// <param name="column">字段</param> /// <param name="geo">坐标点</param> /// <param name="maxDistanceInKilometers">最大的公里数</param> /// <returns>返回当前对象</returns> public BmobQuery WhereWithinDistance(String column, BmobGeoPoint geo, double maxDistanceInKilometers) { _where.Composite(column, "$maxDistanceInKilometers", maxDistanceInKilometers); _where.Composite(column, "$nearSphere", geo); return(this); }
/// <summary> /// WhereNear查询语法,查询最接近某一地点的数据 /// </summary> /// <param name="column">字段(必须是GeoPoint坐标类型的字段)</param> /// <param name="geo">坐标点</param> /// <returns>返回当前对象</returns> public BmobQuery WhereNear(String column, BmobGeoPoint geo) { _where.Composite(column, "$nearSphere", geo); return(this); }