Как установить группу пользователей в столбец лиц или группы sharepoint - программно

Я хочу добавить набор пользователей в столбец "Человек и группа" в моем списке точек доступа. Как мне добавить его в список?

Вот что я сделал:

            SPUserCollection users;
            SPList oSpList = oSPWeb.Lists["VProducts"];
            SPListItem item = oSpList.GetItemById(productId);
            users = (SPUserCollection)item["Followers"];

            users.Add(curUser.LoginName, email, curUser.Name, curUser.Notes);

Я не знаю, верен ли способ получения набора пользователей из списка и способ добавить пользователя и вернуть его. Последняя строка дает исключение для нулевого указателя. Я пробовал использовать SPGroup, но не мог придумать, как это сделать.


person theNoob    schedule 09.10.2012    source источник


Ответы (1)


Это должно сработать для вас:

SPList oSpList = oSPWeb.Lists["VProducts"];
SPListItem item = oSpList.GetItemById(productId);

SPFieldUserValueCollection users = GetFieldUserValueCollection(oSPWeb, item["Followers"])
users.Add(new SPFieldUserValue(oSPWeb, curUser.ID, curUser.LoginName))

item["Followers"] = users;
item.Update();

Код метода GetFieldUserValueCollection приведен ниже:

private SPFieldUserValueCollection GetFieldUserValueCollection(SPWeb web, object userField)
{            
    //If userField object is null return empty collection
    if (userField == null)
        return new SPFieldUserValueCollection();                   

    return new SPFieldUserValueCollection(web, userField.ToString());
}
person Petr Novák    schedule 16.10.2012