RavenDB空间搜索 - session.Query从session.Advanced.LuceneQuery返回不同的结果

时间:2012-07-15 09:26:46

标签: c# ravendb

我对以下两个查询感到有点困惑。由于我的理解有限,我认为它们应该是相同的,但是当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);

1 个答案:

答案 0 :(得分:0)

Query和LuceneQuery实际上都归结为完全相同的事情,所以我很惊讶他们之间存在差异。 你能创建一个失败的测试并将其发送到邮件列表吗?

另请注意,可以链接LuceneQuery中的多个where子句