SolrNet - 有没有办法使用for循环构建Solr查询?

时间:2011-11-16 19:57:13

标签: c# solrnet

我正在测试SolrQueryByField如何使用索引字段的不同组合工作。所以我有一个应用程序,每个索引字段都有一个复选框,我只需要查询solr以查看被检查的字段。那么有没有办法循环复选框控件并将它们添加到SolrQuery?类似的东西:

string query="";
Foreach (var checkbox in checkboxlist)
{

     if(checkbox.checked)
      {
           query += " new SolrQueryByField(checkbox.name)"
       }
}

Solr.Query(query);

我正在使用C#

1 个答案:

答案 0 :(得分:3)

var queries = checkboxlist
    .Where(x => x.checked)
    .Select(x => new SolrQueryByField(x.name, keyword))
    .Cast<ISolrQuery>();
var query = new SolrMultipleCriteriaQuery(queries, SolrMultipleCriteriaQuery.Operators.AND);
var results = solr.Query(query, ...);