Чтение поля lookup (единичное значение):
SPFieldLookupValue SingleValue = new SPFieldLookupValue(item["Внутреннее имя поля"].ToString());
int SPLookupID = SingleValue.LookupId;
string SPLookupValue = SingleValue.LookupValue;
Чтение поля lookup (множественное значение):
SPFieldLookupValueCollection MultipleValues = item["Внутреннее имя поля"] as SPFieldLookupValueCollection;
foreach (SPFieldLookupValue itemValue in MultipleValues)
{
ListItem litem = new ListItem();
litem.Text = itemValue.LookupValue;
litem.Value = itemValue.LookupId.ToString();
dropdownlist.Items.Add(litem);
}
Запись поля lookup (единичное значение):
item["Внутреннее имя поля"] = new SPFieldLookupValue(id, "значение Title (строка), может быть null");
Запись поля lookup (множественное значение):
SPFieldLookupValueCollection itemValues = new SPFieldLookupValueCollection();
foreach (ListItem litem in your collection)
{
itemValues.Add(new SPFieldLookupValue(id, "значение Title (строка), может быть null"));
}
item["The Lookup Field Name"] = itemValues;