Sharepoint日历活动与会者

时间:2013-11-08 12:32:05

标签: c# sharepoint sharepoint-2010 calendar

我想以编程方式将事件添加到SharePoint 2010中的日历中。我获取事件列表并将元素添加到此列表中。

SPList list = web.Lists.TryGetList(sCalendarName);
if (list != null)
{
   SPListItem item = list.Items.Add();
   item["Title"] = "New Event";
   item["Description"] = "New Event created using SharePoint Object Model";
   item["Location"] = "First Floor";
   item["EventDate"] = DateTime.Now;
   item["EndDate"] = DateTime.Now.AddDays(2);
   item["Category"] = "Business";
   item["fAllDayEvent"] = false;
   item["Author"] = web.EnsureUser(@"domen\username");
   item.Update();
}

但我找不到如何在“Particiants”(“Attendee”)字段中添加值。 如果看起来抛出item.Xml,则会有包含用户的ows_ParticipantsPicker元素,该元素由Sharepoint Calendar界面添加。

如何将参与者(参加者)添加到活动中?

1 个答案:

答案 0 :(得分:1)

您是否尝试过使用SPFieldUserValueCollection作为字段值?

SPFieldUserValueCollection values = new SPFieldUserValueCollection();
SPUser user = web.EnsureUser(@"domen\username");
values.Add(new SPFieldUserValue(web, user.ID, user.Name));      
item["Participants"] = values;

另外,不要使用SPList.Items.Add(),它会在添加新项目之前获取所有项目。使用SPList.AddItem()。