我是 Mongo C# 驱动程序的新手,我正在尝试在 C# 中创建一个相交查询。我的函数在 Javascript 中工作,但我在 Mongo 驱动程序中的一些类上苦苦挣扎。
目前我的 GeoJson 拉得很好,但是当我去创建要传递给相交查询的对象时,我似乎没有正确的参数。目前我正在使用以下帖子对我的过滤器进行建模: 从 MongoDB 加载完全包含已知多边形的多边形
如何将 geojson 字符串转换为“坐标”列表以创建 GeoJsonLinearRingCoordinates 对象?
这是我正在尝试使用的多边形示例(俄亥俄州卡罗尔县):
{[ [
[ -80.861994, 40.599404 ],
[ -80.863567, 40.555411 ],
[ -80.92092, 40.556315 ],
[ -80.924566, 40.467975 ],
[ -80.940153, 40.468349 ],
[ -80.941911, 40.4247 ],
[ -81.100097, 40.428928 ],
[ -81.212309, 40.433457 ],
[ -81.269951, 40.433486 ],
[ -81.264744, 40.565042 ],
[ -81.321659, 40.566648 ],
[ -81.317739, 40.651579 ],
[ -81.24125, 40.650534 ],
[ -81.237227, 40.723542 ],
[ -81.198599, 40.729172 ],
[ -81.087289, 40.727816 ],
[ -80.917172, 40.726934 ],
[ -80.918125, 40.643464 ],
[ -80.860822, 40.64257 ],
[ -80.861994, 40.599404 ]
]]}
这是我在 Mongo shell 中使用的 JavaScript 查询:
db.MapPoints.find({ "GeoPoint.coordinates": { $geoIntersects: { $geometry: region.GeoJson.geometry } } })