我对以下两个查询感到有点困惑。由于我的理解有限,我认为它们应该是相同的,但是当session.Advanced.LuceneQuery版本返回我期望的结果时,session.Query版本返回相当随机的结果,肯定超过50英里距离给定位置。
我更喜欢使用session.Query,因为我链接了多个where子句,我无法使用LuceneQuery返回的IDocumentQuery。
我是否误解了两种查询之间的目的?
var query1 = session.Query<AccItem, AccItems_Spatial>()
.Customize(x => x.WithinRadiusOf(radius: 50, latitude: (double)search.Lat, longitude: (double)search.Lon));
var query2 = session.Advanced.LuceneQuery<AccItem, AccItems_Spatial>()
.WithinRadiusOf(radius: 50, latitude: (double)search.Lat, longitude: (double)search.Lon);
答案 0 :(得分:0)
Query和LuceneQuery实际上都归结为完全相同的事情,所以我很惊讶他们之间存在差异。 你能创建一个失败的测试并将其发送到邮件列表吗?
另请注意,可以链接LuceneQuery中的多个where子句