У меня есть модель, подобная приведенной ниже
public class Product
{
[SolrUniqueKey("id")]
public int ID { get; set; }
[SolrField("storage")]
public string Storage { get; set; }
[SolrField("components")]
public Components Components { get; set; }
}
public class Components : List<string>
{
public Components()
{}
public Components(string[] components)
{
AddRange(components);
}
}
В моем schema.xml я сопоставляю поля как:
<field name="id" type="string" indexed="true" stored="true" required="true" />
<field name="storage" type="string" indexed="true" stored="true" omitNorms="true"/>
<field name="components" type="text_ws" stored="true" multiValued="true" omitNorms="true"/>
Я добавил список из 5 продуктов в Solrиндекс.Если я запрашиваю со страницы администрирования Solr «*», я получаю документ с ответом на один из результатов:
<doc>
<arr name="components">
<str>blah1</str>
<str>blah2</str>
<str>blah3</str>
</arr>
<str name="id">0</str>
<str name="storage">foo</str>
</doc>
Однако, когда я запрашиваю Solr через Solrnet, используя что-то вроде:
private readonly ISolrReadOnlyOperations solr var results = solr.Query (SolrQuery.All);
Я считаю, что компоненты всегда нулевые.
Любая помощь приветствуется.
Я вижуэто поведение для любой производной коллекции.