Сохранение
SPFieldUserValueCollection usersCollection = new SPFieldUserValueCollection();
foreach (PickerEntity person in users.ResolvedEntities)
{
SPUser usersUsr = rootWeb.EnsureUser(person.Key) as SPUser;
usersCollection.Add(new SPFieldUserValue(rootWeb, usersUsr.ID, usersUsr.Name));
}
currentItem["Users"] = usersCollection;
Загрузка
oWeb.AllowUnsafeUpdates = true;
SPFieldUserValueCollection userCollection = (SPFieldUserValueCollection)(currentItem["Users"]);
foreach (SPFieldUserValue person in userCollection)
{
SPUser usr = person.User;
PickerEntity entity = new PickerEntity();
entity.Key = usr.LoginName.ToString();
entity.DisplayText = usr.Name;
entity.IsResolved = true;
users.Entities.Add(entity);
}
oWeb.AllowUnsafeUpdates = false;
Использование
Guid users = currentItem.Fields.GetFieldByInternalName("Users").Id;
string usersValue = currentItem[users].ToString();
SPFieldUserValueCollection userCollection = (SPFieldUserValueCollection)currentItem.Fields[users].GetFieldValue(usersValue);
foreach (SPFieldUserValue value in userCollection)
{
SPUser spuserField = properties.Web.EnsureUser(value.User.ToString());
if (spuserField.Email != null)
{
if (spuserField.Email != "")
{
SendMessage(spuserField.Email, subject, body.ToString());
}
}
}