Я работаю над кодом C#, который извлекает все пути семейства сайтов с сервера On-Premise Sharepoint 2013. У меня есть следующие коллекции сайта на сервере:Не все коллекции сайтов отображаются в результатах - Sharepoint 2013 Поиск по CSOM
/ServerURL/
/ServerURL/мой
/ServerURL/мой/личный/site1
/ServerURL/мой/личный/site2
/ServerURL/сайты/
тестовый сайт/ServerURL/custompath/site3
когда я запускаю мой код, я получаю только следующие семейства сайтов:
/ServerURL/
/ServerURL/мой
/serverurl/my/personal/site1
/serverurl/my/personal/site2
Мне было интересно, почему мой поиск не возвращает все семейства сайтов?
вот мой код:
ClientContext context = new ClientContext(siteUrl);
var cred = new NetworkCredential(userName, password, domain);
context.Credentials = cred;
KeywordQuery query = new KeywordQuery(context);
query.QueryText = "contentclass:STS_Site";
SearchExecutor executor = new SearchExecutor(context);
query.TrimDuplicates = true;
var resultTable = executor.ExecuteQuery(query);
context.ExecuteQuery();
foreach (var row in resultTable.Value[0].ResultRows)
{
string siteName = row["siteName"] as string;
Console.WriteLine("Site Name: {0}", siteName);
}
Спасибо!
Вы уверены, что указали свой поиск? В центральном администраторе вы можете проверить в приложении службы поиска историю сканирования и посмотреть, есть ли какие-либо элементы из вашего отсутствующего сайта коллекции. –
Недостающие коллекции сайтов существуют в индексе поиска. если Iuse запрос: «путь: serverurl/sites/TestSite», я получаю недостающий набор сайтов, но запрос «contentclass: STS_Site» должен возвращать все семейства сайтов, которых нет. Я думаю, что это как-то связано с разрешениями serach, но я не знаю, как это исправить –