Я использую C# и CSOM для создания приложения, которое создает событие в календаре SharePoint, которое, как я знаю, существует в моей подписке O365. Я знаю, что O365 - это SharePoint 2013, но мое приложение нацелено на SharePoint 2010, поэтому мне придется иметь дело с обеими версиями.Событие нового календаря не отображается
Исключения не выбрасываются, и все кажется успешным, но новое событие не отображается в календаре даже после обновления страницы. Если я получаю коллекцию элементов с тем же заголовком события, событие, введенное программой, возвращается и, как представляется, содержит все столбцы, установленные в коде.
Функция CalendarItemCreate помещает данные во все необходимые столбцы календаря. Если я ищу другие элементы календаря, которые я ввел вручную через календарь SharePoint, я их нахожу. Единственное различие, которое я могу видеть между введенными вручную или запрограммированными событиями, - столбец «Описание» имеет «для введенных вручную событий».
Любые идеи?
private void CalendarItemCreate(ICalendarItem item) {
using (var context = new ClientContext(_calendarLocation)) {
context.Credentials = _credentials;
var web = context.Web;
var transferScheduleList = web.Lists.GetByTitle(TransferScheduleToken);
var listItemCreationInformation = new ListItemCreationInformation();
var listItem = transferScheduleList.AddItem(listItemCreationInformation);
listItem[TitleToken] = item.EventTitle;
listItem[EventDateToken] = item.EventStartLocal;
listItem[EndDateToken] = item.EventStartLocal.AddMinutes(30);
listItem[DescriptionToken] = string.Empty; //item.EventDescription;
listItem[TransferTypeToken] = item.EventTransferType;
listItem[TransferStatusToken] = item.EventTransferStatus;
listItem[CategoryToken] = "Data Transfer";
listItem[ConfigurationFileLocationToken] = item.ConfigurationFileLocation;
listItem[EventTypeToken] = 0;
listItem[FallDayEventToken] = false;
listItem[FrecurrenceToken] = false;
listItem.Update();
context.ExecuteQuery();
}