6

嗨,我在 sharepoint 2007 中有两个列表。我在列表中有一个查找列,它看起来另一个字段。我想使用 sharepoint 对象模型将项目添加到第二个列表。如何设置查找字段值。(该值已经在另一个列表中)。?

SPListItem Employee = web.Lists["Employee"].Items.Add();
Employee["Name"] = account.Name;
Employee["Department"] = <lookup value must come here>
Employee.Update();                 
4

1 回答 1

5

查找字段将包含行的 id 和要显示的列的值的组合,用 分隔:#,在您的情况下可以是1:#HumanResources12:#Engineering

因此,要引用查找仅设置 id 是不够的,而是需要设置上述字符串。幸运的是,SharePoint 提供了SPFieldLookupValue完全执行此操作的类:

var department = web.Lists["Department"].GetItemById(1);
var employee = web.Lists["Employee"].Items.Add();
employee["Name"] = account.Name;
employee["Department"] = new SPFieldLookupValue(department.ID, department.Title);
employee.Update(); 
于 2012-09-24T09:34:10.370 回答