Пользователь Sharepoint не найден при загрузке списков в C#

У нас есть приложение winforms, которое извлекает все списки с сайта Office 365 SharePoint. Недавно я начал получать ошибку «пользователь не найден». Я могу войти на сайт SP https: / / [name].sharepoint.com/sites/[folder1] / [userfolder] / SitePages / Home.aspx из браузера и посмотреть все списки. Однако когда я запускаю приложение winforms, оно выдает ошибку.

MsOnlineClaimsHelper claimsHelper = new MsOnlineClaimsHelper(sharePointSite, sharePointUser, sharePointPassword);
ClientContext clientContext = new ClientContext(sharePointSite);
clientContext.ExecutingWebRequest += claimsHelper.clientContext_ExecutingWebRequest;
clientContext.Load(clientContext.Web);
clientContext.ExecuteQuery();    
Web web = clientContext.Web;

// Retrieve all lists from the server. 
clientContext.Load(web.Lists);

clientContext.ExecuteQuery(); //<-- Throws error here 

Ошибка

    Message "User cannot be found." string
    ServerErrorCode -2146232832 int
    ServerErrorDetails  null    object
    ServerErrorTraceCorrelationId   "ee687f9d-c05a-2000-2113-22de7e4f8fe1"  string
    ServerErrorTypeName "Microsoft.SharePoint.SPException"  string
    ServerErrorValue    null    string
    ServerStackTrace    ""  string

Похожие (не помогло) : Sharepoint 2010 пользователь не найден ошибка

Я извлекаю списки, не уверен, связано ли это. : https://social.technet.microsoft.com/Forums/office/en-US/f9221c7b-f835-4041-ac21-ab896bae106f/microsoftsharepointspexception-user-cannot-be-found?forum=sharepointgeneralprevious

Помощь / предложения очень ценится! Спасибо!

1 ответ

  1. Два варианта для устранения проблемы (если первый не работает попробуйте второй):

    1. User owner= web.ensureuser(domain\username)

    2. User owner=web.CurrentUser;