Модуль поиска Solr, над которым я работаю, является чем-то особенным.Таким образом, вместо стандартных документов Solr, таких как Project, Product .., у меня есть один документ, поля которого id , id_item , source_item , field_name как показано ниже:
public class ItemFound
{
[SolrUniqueKey("id")]
public string id { get; set; }
[SolrField("id_item")]
public string id_item { get; set; }
[SolrField("source_item")]
public string source_item { get; set; }
[SolrField("field_name")]
public string field_name { get; set; }
}
- Поле source_item относится к типу элемента (Project, Product ..)
- Поле field_nameотносится к имени поля элемента (Продукт: бренд )
- Поле id_item относится к значению исходного элемента (Продукт PD105 )
- Поле id объединяет всю вышеуказанную информацию ( PD105-FIELDBRAND )
Когда мы хотим показать результаты, мы получаем результат запроса solr, затем мы делаемсопоставление с нашей базой данных, чтобы получить значения, соответствующие нашему результату запроса.
Пользовательский интерфейс будет отображать таблицу для каждого типа источника ( Product , Project ..) ссписок продуктов / проектов / .. включая запрос по ключевым словам.
Итак, моя проблема: как я могу получить фасеты поля (например, Brand), зная, что я могу получить фасеты field_name (результат будет: Brand (10), size)(55), ... ) но я хочу иметь ( Apple (10), Nike (15), .. ).
Вот и все.Надеюсь, я хорошо описал свою проблему.