【问题标题】:Sitecore Search Template Query [duplicate]Sitecore 搜索模板查询 [重复]
【发布时间】:2015-06-30 06:16:45
【问题描述】:

我想在 Sitecore 中查询内容项目的模板,以便在项目的模板与 templates 变量中包含的任何 TemplateID 匹配时返回结果。 templates 变量包含一个管道分隔的 TemplateID 列表,用于在内容项上搜索。

我尝试了几种不同的方法,但没有提供我想要的结果。下面是一个这样的示例,我还尝试使用模板字符串上的拆分来分离每个模板,并在下面运行 foreach 循环。

var multiSearchParam = new MultiFieldSearchParam 
{
    Database = dbName,
    InnerCondition = QueryOccurance.Should
};
multiSearchParam.TemplateIds = templates;
parameters.Add(multiSearchParam);

我觉得我使用的条件有问题......当我只用一个模板 ID 运行它时,它就像一个魅力,所以查询多个模板似乎是一个问题。

有人对我做错了什么有任何建议吗?

【问题讨论】:

标签: c# .net lucene content-management-system sitecore


【解决方案1】:

使用 Sitecore ContentSearch,我是这样解决的:

 Expression<Func<SearchResultItem, bool>> predicate = PredicateBuilder.True<SearchResultItem>();
            predicate = predicate.Or(p => p.TemplateName.Equals("News"));
            predicate = predicate.Or(p => p.TemplateName.Equals("Page"));

            IEnumerable<SearchResultItem> results = _searchContext
                .GetQueryable<SearchResultItem>()
                .Where(predicate);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-07-07
    • 1970-01-01
    • 2013-09-24
    • 1970-01-01
    • 2015-10-27
    • 1970-01-01
    相关资源
    最近更新 更多