Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/search/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.net 在Sitecore Lucene中进行空间查询,以查找';s范围a用户';s坐标属于_.net_Search_Lucene_Sitecore_Spatial - Fatal编程技术网

.net 在Sitecore Lucene中进行空间查询,以查找';s范围a用户';s坐标属于

.net 在Sitecore Lucene中进行空间查询,以查找';s范围a用户';s坐标属于,.net,search,lucene,sitecore,spatial,.net,Search,Lucene,Sitecore,Spatial,我在Sitecore中有一些项目,这些项目代表服务中心。他们有一个lat/lon和一个有效范围,这意味着他们能够提供服务的范围。这些范围可能不同。一个服务中心的范围为10英里,一个服务中心的范围为15英里,等等。这些范围可能重叠。我需要进行搜索,找出某个点属于哪个服务中心的范围 现在我在代码中这样做是在加载项目后,通过计算用户与服务中心的距离,并抛出超出范围的结果。我想把这个交给Lucene。也许通过使用计算字段,每个服务中心项目可以存储表示其范围圆圈的值,然后搜索将测试当前纬度/经度点是否在该

我在Sitecore中有一些项目,这些项目代表服务中心。他们有一个lat/lon和一个有效范围,这意味着他们能够提供服务的范围。这些范围可能不同。一个服务中心的范围为10英里,一个服务中心的范围为15英里,等等。这些范围可能重叠。我需要进行搜索,找出某个点属于哪个服务中心的范围

现在我在代码中这样做是在加载项目后,通过计算用户与服务中心的距离,并抛出超出范围的结果。我想把这个交给Lucene。也许通过使用计算字段,每个服务中心项目可以存储表示其范围圆圈的值,然后搜索将测试当前纬度/经度点是否在该圆圈内


我有一个总的计划,但我不能把它全部放在一起。提前感谢任何能为我指出正确方向的人。

你看过这个了吗。在执行withinradius查询时,您可以通过向搜索POCO添加半径字段来获得动态半径。@IanGraham我确实看过,但问题是我感兴趣的半径对于每个可搜索的项目都是唯一的。想象一下笛卡尔平面上的维恩图,这些圆的大小各不相同。这些圆圈代表服务中心的有效范围。作为一个用户,我有一个点,我想知道我被哪个圆覆盖。是的,我知道。但它可能会起作用(或者,如果不将半径作为POCO上的属性,您可以扩展它),因此搜索将尝试使用索引中的每个半径检查lat长度。您看过这个了吗。在执行withinradius查询时,您可以通过向搜索POCO添加半径字段来获得动态半径。@IanGraham我确实看过,但问题是我感兴趣的半径对于每个可搜索的项目都是唯一的。想象一下笛卡尔平面上的维恩图,这些圆的大小各不相同。这些圆圈代表服务中心的有效范围。作为一个用户,我有一个点,我想知道我被哪个圆覆盖。是的,我知道。但它可能会起作用(或者,如果不将半径作为POCO上的属性,您可以扩展它),因此搜索将尝试使用索引中的每个半径检查lat长度。