我试图查询ParentId =线程或DataId = Thread的记录。查询一直在给我计时。下面的查询有什么问题吗?
var Test = solr.Query(new SolrQueryByField("ParentId", Thread) ||
(new SolrQueryByField("DataId", Thread)));发布于 2014-01-31 15:35:34
我不是Solr.Net方面的专家,但我用它做了一个项目。我只能建议你尝试几件事。
首先,转到SOLR Admin并尝试执行以下查询:
(ParentId:"Thread") OR (DataId:"Thread")如果返回任何结果并没有超时,则可以在Solr.Net中使用相同的字符串,如下所示:
string strQuery = "(ParentId:\"Thread\") OR (DataId:\"Thread\")";
// or use * for contains instead of double quotes
var query = new SolrQuery(strQuery);
SortOrder sortOrder = new SortOrder("ParentId");
var solrQueryResult = solr.Query(query, new QueryOptions
{
Rows = 100, //Max Rows returned
Start = 0,
OrderBy = new[] { sortOrder }, //If you want the ordered result
});
var list = solrQueryResult.ToList();//if you want list发布于 2015-05-18 22:09:59
不需要手动连接字符串,就可以做到这一点:
ISolrOperations<User> solr = ServiceLocator.Current.GetInstance<ISolrOperations<User>>();
var users = solr.Query(new SolrQuery("age:20") || new SolrQuery("age:30"), options);更多信息在这里:https://github.com/mausch/SolrNet/blob/master/Documentation/Querying.md
https://stackoverflow.com/questions/21483639
复制相似问题