我想将一组用户添加到sharepoint列表中的person和group列 如何将其添加到列表中?
这就是我所做的:
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,但无法找到完成它的方法。
答案 0 :(得分: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());
}