1

私のSharePointリストには、複数のルックアップ値を許可する列があります。私のC#コントロール(Webパーツ内)を使用すると、ユーザーはリストボックスから複数の選択を行うことができます。これらの値を配列に分割します。各配列メンバーは、同じSPListItem列で更新する必要がある選択された値です。

選択範囲がリストボックスから適切に渡されていることを知っています。この値のグループをSPListItemの同じ列に追加する必要があります。

どこが間違っているのですか?

SPFieldLookupValueCollection MyCollection = new SPFieldLookupValueCollection();
for (int i = 0; i < MyArrayOfSelections.Length; i++)
{
   if (MyLookupList["LookupColumn"].ToString() == MyArrayOfSelections[i].ToString())
   {
      MyID = int.Parse(MyLookupList[i]["ID"].ToString());
      SPFieldLookupValue thisSelection = new SPFieldLookupValue(MyID,MyArrayOfSelections[i].ToString());
      MySubCollection.Add(thisSelection);
      }
   }
   ListIWantToUpdate["ColumnWithMultipleLookupSelections"] = SubCollection;
   ListIWantToUpdate.Update();
   site.Update();
}
4

1 に答える 1

1

コード例の最後の行は紛らわしいです (変数の名前付けだけかもしれません)。データを更新するだけの場合は、SPListオブジェクト (特定のリストに対する「リストの管理」権限が必要) もオブジェクト (SPSiteサイト管理者または所有者である必要があります) も更新する必要はありません。したがって、このコードは正常に実行されません。通常のユーザー向け。

于 2010-03-11T11:08:58.313 に答える