Использовать учетные данные для взаимодействия с клиентской объектной моделью Sharepoint?

Мне нужно написать небольшое программное обеспечение, которое должно обновить список на Sharepoint 2010.

Я нашел "SPSite", который я могу создать с помощью URL, но я не могу понять, как указать, с каким пользователем я хочу подключиться.

Пользователь не является текущим пользователем Windows, и программа не выполняется на сервере.

Я видел возможность дать "SPUserToken", но в моем методе у меня есть только пользователь, домен и его пароль, так как я могу сгенерировать этого пользователя (и я думаю, что этот пользователь неизвестен в системе, выполняющей код, но известно на сервере)

Где я могу это указать?

Спасибо!

1 ответ

Решение

Поскольку вы используете объектную модель клиента, вы не будете работать с классом SPSite (который является частью объектной модели сервера).

Вместо этого вы должны создать экземпляр класса ClientContext и предоставить свои учетные данные для аутентификации через его метко названное свойство Credentials. Затем вы можете использовать его для получения объекта List, который хотите обновить:

using System.Net;
using Microsoft.SharePoint.Client;

using (ClientContext context = new ClientContext("http://yourserver/")) {
    context.Credentials = new NetworkCredential("user", "password", "domain");
    List list = context.Web.Lists.GetByTitle("Some List");
    context.ExecuteQuery();

    // Now update the list.
}
Другие вопросы по тегам