Включить лазурный поиск синонимов

Я пытаюсь включить карту синонимов для некоторых полей, используя следующий код:

public ActionResult ConfigFieldToUseSynonyn()
        {
            string searchServiceName = "xxx";
            string apiKey = "123123123123123123123123123";

            SearchServiceClient serviceClient = new SearchServiceClient(searchServiceName, new SearchCredentials(apiKey));
            var index = serviceClient.Indexes.Get("produtos");

            index.Fields[2].SynonymMaps = new string[] { "marca-synonymmap" };
            index.Fields[7].SynonymMaps = new string[] { "marca-synonymmap" };

            serviceClient.Indexes.CreateOrUpdate(index, accessCondition: AccessCondition.IfNotChanged(index));

            return Content("OK");
        }

и определение с использованием следующего кода:

public ActionResult Synonym()
        {
            string searchServiceName = "xxx";
            string apiKey = "123123123123123123123123123";

            SearchServiceClient serviceClient = new SearchServiceClient(searchServiceName, new SearchCredentials(apiKey));
            var indexClient = serviceClient.Indexes.GetClient("produtos");

            var synonymMap = new SynonymMap()
            {
                Name = "marca-synonymmap",
                Format = "solr",
                Synonyms = @"
                 dolve, douve => dove\n
                "
            };

            serviceClient.SynonymMaps.CreateOrUpdate(synonymMap);

            return Content("OK");
        }

когда я пытаюсь найти продукты, используя "dolve", это не означает "dove". Что мне не хватает?

PS: эти поля доступны для поиска и строкового типа.

1 ответ

Решение

В определении карты синонимов '@' помечает содержимое строки как дословный литерал, и правило становится dolve, douve => dove\n, с "\n" в конце. Это правило синонимов переписывает запрос 'dolve' в 'dove\n'. Синонимы будут работать должным образом, если вы удалите префикс '@' или удалите новую строку '\ n' в определении синонима.

Nate

Другие вопросы по тегам