MongoDB 2dsphere索引错误
为表“MSParcels”创建索引时出错:WriteConcern检测到错误“无法从对象提取地理键,几何体格式错误?”:MongoDB 2dsphere索引错误,mongodb,geojson,Mongodb,Geojson,为表“MSParcels”创建索引时出错:WriteConcern检测到错误“无法从对象提取地理键,几何体格式错误?”: { type: "Polygon", coordinates: [ [ [ -122.118466012, 47.6511409501, 0.0 ], [ -122.118687874, 47.6508529655, 0.0 ], [ -122.118817718, 47.650852731, 0.0 ], [
{ type: "Polygon", coordinates:
[ [ [ -122.118466012, 47.6511409501, 0.0 ],
[ -122.118687874, 47.6508529655, 0.0 ],
[ -122.118817718, 47.650852731, 0.0 ],
[ -122.118890754, 47.650852592, 0.0 ],
[ -122.118891979, 47.651140118, 0.0 ],
[ -122.118703033, 47.6511404878, 0.0 ],
[ -122.118466012, 47.6511409501, 0.0 ] ] ] }
问题是,我正在从SQL Server进行复制,其中相同的坐标通过STIsValid
使用C#驱动程序MongoDB.driver.Builders.IndexKeys.GeospatialSpherecal
Mongo版本2.4.4
有什么建议吗?您的坐标无效。geojson多边形是两个坐标而不是三个坐标的数组数组(附加0.0)您的坐标无效。geojson多边形是具有两个坐标而非三个坐标(附加0.0)的数组数组。geojson对mongodb无效-它只接受x、y坐标,不接受z坐标(高度)。这是因为它只有二维索引/查询功能 您需要从geojson文档中删除z坐标,使其类似于:
{ type: "Polygon", coordinates:
[ [ [ -122.118466012, 47.6511409501],
[ -122.118687874, 47.6508529655],
[ -122.118817718, 47.650852731],
[ -122.118890754, 47.650852592],
[ -122.118891979, 47.651140118],
[ -122.118703033, 47.6511404878],
[ -122.118466012, 47.6511409501] ] ] }
有一项功能要求改进这一点-请投票支持:geojson对mongodb无效-它只接受x、y坐标,不接受z坐标(高度)。这是因为它只有二维索引/查询功能 您需要从geojson文档中删除z坐标,使其类似于:
{ type: "Polygon", coordinates:
[ [ [ -122.118466012, 47.6511409501],
[ -122.118687874, 47.6508529655],
[ -122.118817718, 47.650852731],
[ -122.118890754, 47.650852592],
[ -122.118891979, 47.651140118],
[ -122.118703033, 47.6511404878],
[ -122.118466012, 47.6511409501] ] ] }
有一项功能要求对此进行改进-请投票支持:无问题-您可以标记为已回答以帮助其他人解决相同问题吗?该功能已在MongoDB 3.0.3中实现。无问题-您可以标记为已回答以帮助其他人解决相同问题吗?该功能已在MongoDB 3.0.3中实现。