Значения уточнения остановлены для возврата подсказок

У меня проблема со значениями уточнения, возвращаемыми поиском в SharePoint 2016. Не знаю, когда это начало появляться, но может быть это связано с миграцией с SP 2013 на SP 2016? Позже мы вернулись из уточнений поиска, и значения выглядели так:

Refinement Value: Organizational:ColAfterSyncUpg  GP0|#1dc79002-d32b-4faa-89f3-08ab45051e70  L0|#01dc79002-d32b-4faa-89f3-08ab45051e70|Organizational:ColAfterSyncUpg  GTSet|#4642cdf4-872b-4179-96f5-043fbadb0fcf  GPP|#4f668d16-2643-436b-b72b-0f180ccae0e6

Это значение было взято из управляемого свойства, к которому присоединены два свойства для обхода:

ows_<managed_metadata_field_name>
ows_taxId_<managed_metadata_field_name>

. Благодаря этому я смог получить корректный GUID и в поисковом запросе пройти несколько уточняющих фильтров. Но теперь (не знаю, когда это начало происходить), когда я добавляю новый документ в пустую коллекцию (без старых, правильных файлов) поиск сканирует это поле и возвращает только:

Refinement Value: Organizational:ColAfterSyncUpg

Я предполагаю, что второе просканированное свойство (ows_taxid) пусто. Но почему? Что-то изменилось в SP 2016 и теперь это свойство не создается что ли? "Старые" файлы сканируются нормально, "новые" - нет...

РЕДАКТИРОВАТЬ: Обнаружил, что когда я редактирую элемент вручную, то все в порядке, и поиск возвращает правильные значения с помощью GUIDS. Так может что-то не так с кодом? Код довольно сложный, но некоторые его части:

var taxValue =
            new TaxonomyFieldValue(field)
            {
                TermGuid = tagDto.TagId.ToString(),
                Label = tagDto.DefaultLabel,
                WssId = -1
            };
field.SetFieldValue(entity, taxValue);
entity.UpdateOverwriteVersion();

person Adrian Stanisławski    schedule 22.11.2018    source источник


Ответы (1)


Я узнал, что было причиной проблемы. Один из членов моей команды отключил события во время подготовки документа с помощью нашего кода. Похоже, в SP есть некоторые события, которые генерируют эти значения, и события нельзя отключить, если они вам нужны.

person Adrian Stanisławski    schedule 23.11.2018