Обновление SPList.Author в SharePoint - PullRequest
1 голос
/ 04 августа 2011

Пользователь, создавший различные списки в SharePoint Server 2010, впоследствии был удален из семейства сайтов. Это оставляет идентификатор пользователя в свойстве SPList.Author, но приводит к тому, что сообщения «Пользователь не может быть найден» в различных местах, которые пытаются создать экземпляр объекта SPUser.

Есть ли поддерживаемый способ обновления свойства SPList.Author? Я попытался с сервером OM, клиентом OM и веб-службой lists.asmx, но потерпел неудачу со всеми тремя.

Ответы [ 3 ]

0 голосов
/ 09 августа 2011

возможно найти способ удалить пользователя с сайта коллекции

0 голосов
/ 09 августа 2011

Я принял, что невозможно обновить SPList.Author , но моя потребность в этом также ослабла.

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

Оказалось, однако, что это из шаблонов рабочих процессов, а не списков, которые были опубликованы удаленным пользователем.

0 голосов
/ 04 августа 2011

Я никогда не делал этого раньше, но используя это руководство здесь, вот что вы можете попробовать на Powershell:

[System.Reflection.Assembly]::LoadWithPartialName("Microsoft.SharePoint")
$siteUrl = "your sharepoint site url"
$webName = "your webname"
$spSite = new-object Microsoft.SharePoint.SPSite($siteurl)
$spWeb = $spSite.OpenWeb($webName)
$listName = "your listname"
$userLoginName = "your username"

$spList = $spWeb.Lists[$listName]
$spList.Author = $spWeb.AllUsers[$userLoginName]
$spList.Update() // I don't know if this is required.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...