我正在建立一个Lucene索引(使用Lucent .NET Version.LUCENE_30),并且我试图基于日期搜索记录。我创建的索引如下:
if (sampleData.Start_Date != null)
doc.Add(new Field("Start_Date", DateTools.DateToString(sampleData.Start_Date ?? DateTime.Now, DateTools.Resolution.SECOND), Field.Store.YES, Field.Index.ANALYZED));
然后我有这样一个查询:
LuceneData = LuceneSearch.search_query("(Start_Date : [20220601 TO 20220601])");
此查询未传回任何记录(虽然我知道存在具有此值的记录)。在此范例中,我只想传回Start_Date为2022-06-01的所有记录。我是否对日期进行了错误的索引或建构了错误的查询字串?
谢谢
1条答案
按热度按时间m1m5dgzv1#
对于可能需要此功能的其他人:当我将对象Map到Document时,我必须将字符串重新转换回日期,如下所示:
一旦我这样做了,它的工作。