在Sitecore中,如何使用Lucene运行日期范围查询?

在Sitecore中,如何使用Lucene运行日期范围查询?,sitecore,lucene.net,sitecore6,Sitecore,Lucene.net,Sitecore6,我需要能够使用Lucene和最新的Sitecore.Searchframework在Sitecore中运行日期范围查询 有人知道怎么做吗 我没有找到一个好的例子。我在谷歌上搜索了一下,到处都找到了一些零碎的东西。你可以在这里找到类似的问题: 只需将这些字段视为标准字符串字段,并执行范围查询,从包含此值的20130418T000000开始,到20130819T000000结束 这是一种适合我的方法: private static void CreateCreatedDatesQueryPa

我需要能够使用Lucene和最新的
Sitecore.Search
framework在Sitecore中运行日期范围查询

有人知道怎么做吗


我没有找到一个好的例子。我在谷歌上搜索了一下,到处都找到了一些零碎的东西。

你可以在这里找到类似的问题:

只需将这些字段视为标准字符串字段,并执行范围查询,从包含此值的20130418T000000开始,到20130819T000000结束

这是一种适合我的方法:

    private static void CreateCreatedDatesQueryPart(BooleanQuery query, string createdFrom, string createdTo)
    {
        if (!String.IsNullOrEmpty(createdFrom) || !String.IsNullOrEmpty(createdTo))
        {
            if (String.IsNullOrEmpty(createdFrom))
            {
                createdFrom = "000000t000000";
            }
            if (String.IsNullOrEmpty(createdTo))
            {
                createdTo = "999999t999999";
            }
            query.Add(new TermRangeQuery("__created", createdFrom, createdTo, true, true), BooleanClause.Occur.MUST);
        }
    }

您可以在这里找到类似的问题:

只需将这些字段视为标准字符串字段,并执行范围查询,从包含此值的20130418T000000开始,到20130819T000000结束

这是一种适合我的方法:

    private static void CreateCreatedDatesQueryPart(BooleanQuery query, string createdFrom, string createdTo)
    {
        if (!String.IsNullOrEmpty(createdFrom) || !String.IsNullOrEmpty(createdTo))
        {
            if (String.IsNullOrEmpty(createdFrom))
            {
                createdFrom = "000000t000000";
            }
            if (String.IsNullOrEmpty(createdTo))
            {
                createdTo = "999999t999999";
            }
            query.Add(new TermRangeQuery("__created", createdFrom, createdTo, true, true), BooleanClause.Occur.MUST);
        }
    }

是的,我看到了。我遵循了这个例子,但它不起作用。它没有返回任何结果。您使用哪个Sitecore版本?字段是什么类型的?是否确定字段已编制索引,项目已编制索引?版本为Sitecore 6.6。该字段是日期字段。是的,字段和项目都被索引了。我正在使用索引查看器查看索引数据。您的代码与上面的方法类似吗?索引查看器中的值是否为
YYYYMMDDTHHmmss
YYYYMMDD
格式?我在6.6中的日期范围搜索中遇到了同样的问题,代码在6.4中工作,因此不知道它是否链接到Lucene.Net版本更改。是的,我看到了。我遵循了这个例子,但它不起作用。它没有返回任何结果。您使用哪个Sitecore版本?字段是什么类型的?是否确定字段已编制索引,项目已编制索引?版本为Sitecore 6.6。该字段是日期字段。是的,字段和项目都被索引了。我正在使用索引查看器查看索引数据。您的代码与上面的方法类似吗?索引查看器中的值是否为
YYYYMMDDTHHmmss
YYYYMMDD
格式?我在6.6中的日期范围搜索中遇到了相同的问题,代码在6.4中工作,因此不知道它是否链接到Lucene.Net版本更改。