首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MongoDB 2dsphere索引错误

MongoDB 2dsphere索引错误
EN

Stack Overflow用户
提问于 2013-06-13 06:02:04
回答 2查看 740关注 0票数 1

为表‘MSParcels’创建索引时出错: WriteConcern检测到错误‘无法从对象中提取地理关键字,几何图形格式错误?:

代码语言:javascript
复制
{ 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.GeoSpatialSpherical

Mongo版本2.4.4

有什么建议吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-06-13 17:25:44

geojson对mongodb无效-它只接受x,y坐标,而不接受z坐标(高度)。这是因为它只有2D索引/查询功能。

您需要从geojson文档中删除z坐标,如下所示:

代码语言:javascript
复制
{ 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] ] ] } 

有一个改进这一点的功能请求-请投票支持:SERVER-9220

票数 1
EN

Stack Overflow用户

发布于 2013-06-13 06:56:37

你的坐标无效。geojson多边形是由具有两个坐标而不是三个坐标的数组组成的数组(额外的0.0)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17076132

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档