我希望有人能帮我解决这个问题。我在SharePoint中向列表添加新项目的实际工作流程如下:
using (var clientContext = new ClientContext(Website))
{
List oList = clientContext.Web.Lists.GetByTitle("List");
ListItemCreationInformation itemCreateInfo = new ListItemCreationInformation();
//add Item
ListItem listItem = oList.AddItem(itemCreateInfo);
listItem["Effort"] = 5.0;
listItem["ItemStart"] = DateTime.Now.ToLocalTime();
listItem["Workpackage"] = "PRG";
listItem.Update();
clientContext.ExecuteQuery();
}
非常直接;作品";除了Item:listItem["Workpackage"]="Workpackage[";PRG";;
如果我获取列表以显示项中的所有值。FieldValues我知道这是一个FieldLookUpValue。我这样显示((FieldLookupValue(value.value(.RookupValue.
我的问题是,我需要为添加到列表中的项目设置此值,因为如果没有它,SharePoint将无法在正确的字段中识别它。
如果我使用上面的代码,我会发现这个字段["Workpackage"]可能是写保护的,或者我为这个字段传输了错误的数据。这就是为什么我认为我必须将数据作为LookUpValue进行传输,但我真的不知道如何实现这一点。
我希望我能尽可能详细地描述我的问题。如果你需要任何进一步的信息,请告诉我。无论如何,谢谢你的帮助!
致以最诚挚的问候
请查看此处:https://sharepoint.stackexchange.com/questions/73252/sharepoint-client-model-and-setting-up-lookup-field
您需要传递查找列表中项目的ID。