1

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

1 回答 1

0

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

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

于 2012-07-15T14:43:24.987 回答