SolrNet から TermVector の結果を正しく取得できません。次のコードで試しました。
QueryOptions options = new QueryOptions()
{
OrderBy = new[] { new SortOrder("markupId", Order.ASC) },
TermVector = new TermVectorParameters
{
Fields = new[] { "text" },
Options = TermVectorParameterOptions.All
}
};
var results = SolrMarkupCore.Query(query, options);
foreach (var docVectorResult in results.TermVectorResults)
{
foreach (var vectorResult in docVectorResult.TermVector)
System.Diagnostics.Debug.Print(vectorResult.ToString());
}
上記のコードでは、外側の foreach の results.TermVectorResults は適切なカウントを提供しますが、内側の foreach の docVectorResult.TermVector は空です。
上記のコードの生成された solr クエリをコピーし、solr admin に対して発行したところ、termVectors 値を適切に取得しています。私が発行した実際のクエリは以下のとおりです
http://localhost:8983/solr/select/?sort=markupId+asc&tv.tf=true&start=0&q=markupId:%2823%29&tv.offsets=true&tv=true&tv.positions=true&tv.fl=text&version=2.2&rows=50