SPFARM.LOCAL объект кэшируется в SharePoint 2013
-
10-12-2019 - |
Вопрос
Я испытываю странную проблему, где объект SPFARM.LOCAL не обновляется для SharePoint 2013, но он выполняет на 2010 год. В основном у меня есть код, который добавляет / развертывает / обновляет решения SharePoint в C #.У меня есть нить ждут, пока решение не будет добавлено и / или задание развертывания не завершено перед продолжением.
Это упрощенная версия кода:
var complete = false;
while (!complete)
{
complete = SPFarm.Local.Solutions[“solutionName.wsp”] != null;
if (!complete)
Thread.Sleep(10000);
}
.
в SharePoint 2010, это работает отлично.Однако в 2013 году решение постоянно возвращает NULL.Я могу проверить, что решение существует в отдельном окне PowerShell с Get-Spsolution, но он не обновляется в этой теме.
Любые идеи о том, как получить SharePoint 2013, чтобы обновить объект SPFARM.LOCAL в основной ните?
Решение
SP.Update()
should work after you add the solution to the farm.
var complete = false;
while (!complete)
{
complete = SPFarm.Local.Solutions[“solutionName.wsp”] != null;
if (!complete){
SPFarm.Local.Update();
Thread.Sleep(10000);
}
}