1

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 を使用してみましたが、それを実行する方法がわかりませんでした。

4

1 に答える 1

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());
}
于 2012-10-16T13:26:14.930 に答える