开发桥以使用具有MongoDB的cms我使用存储键、值、类型来管理链接到cms的所有值。这些键、类型值被存储在web.config中以允许可扩展的模式。在这种情况下,不允许使用任何类对象定义来保留动态架构。结果是存储为DynamicArray。这将生成一些关于纬度经度的执行和存储的doubs,以便使用Query.Near运算符以执行方式进行检索。
DynamicArray
{
item : { Key: "lat", Value: "12.897", Type:double }
item : { Key: "lng", Value: "12.345", Type:double }
item : { Key: "country", Value: "USA", Type:String }
item : { Key: "state", Value: "CA", Type:String }
item : { Key: "city", Value: "San Jose", Type:String }
item : { Key: "district", Value: "", Type:String }
}
Query.ElemMatch("DynamicArray", Query.And(Query.EQ("Key", "country"), Query.EQ("Value", "USA")));
Query.Near ??它是与GeoSpatial搜索兼容的模式键值吗?性能如何?如何以这种模式查询使用官方驱动的Query.Near (C#官方驱动)?
谢谢。
发布于 2011-02-26 22:52:50
为了在MongoDB上使用地理空间查询,您需要将x,y坐标存储为对象中的前两个值。有效模式的示例如下:
{ loc: [20,30] }
{ loc: { x: 20, y: 30 }}
{ loc: { foo: 20, y: 30}}
{ loc: { lat : 40.739037, long: 73.992964 } }您不能像在上面的示例中那样将坐标分离为多个对象。
欲了解更多信息,请访问:http://www.mongodb.org/display/DOCS/Geospatial+Indexing
https://stackoverflow.com/questions/5127113
复制相似问题