C36 및 CSOM을 사용하여 O365 구독에있는 SharePoint 일정에 이벤트를 만드는 응용 프로그램을 작성하고 있습니다. 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();
}