Exchange Server 2007 SP3에서 EWS Managed API 2.0을 사용할 때 이상한 문제가 있습니다. 그래서 나중에 회의를 업데이트하거나 취소하는 데 사용할 수 있습니다EWS : Appoitnment Item.Id.UniqueId가 상수가 아닙니다.
appointment.Save(SendInvitationsMode.SendToAllAndSaveCopy);
appointment.Id.UniqueId;
나는 내 로컬 DB에 저장 : 나는 약속을 만들고 그것을 저장하면
, 나는 다음과 같은 코드를 사용하여 ID를 얻을 수 그것.
나중에 내가 다음 코드를 사용 충돌하는 회의를 검색 할 때
CalendarView view = new CalendarView(Start, End);
view.PropertySet = new PropertySet();
Folder rootfolder = Folder.Bind(service, WellKnownFolderName.Calendar);
//view.PropertySet.Add(AppointmentSchema.Resources);
view.PropertySet.Add(ItemSchema.Id);
view.PropertySet.Add(AppointmentSchema.Subject);
view.PropertySet.Add(AppointmentSchema.Start);
view.PropertySet.Add(AppointmentSchema.Duration);
view.PropertySet.Add(AppointmentSchema.End);
view.PropertySet.Add(AppointmentSchema.Organizer);
view.PropertySet.Add(AppointmentSchema.Id);
Mailbox mailbox = new Mailbox(Email);
FolderId id = new FolderId(WellKnownFolderName.Calendar, mailbox);
CalendarFolder folder = CalendarFolder.Bind(service, id);
FindItemsResults<Appointment> findResults = folder.FindAppointments(view);
//Iterating through the conflicting meetings returned by folder.FindAppointments
foreach (Appointment app in findResults.Items)
{
appts.Rows.Add(app.Subject, app.Start, app.End, app.Duration, app.Id.UniqueId);
}
나는 충돌하는 회의 중 하나의 ID에 액세스 할 때 찾을 그것을 내가 가지고있는 ID와 다른 다른 모든 정보는 동일하지만 내 로컬 DB에 있습니다. 내 ID를 사용하여 약속에 바인딩 할 수는 있지만 문제는 동일한 회의가 이제 2 개의 다른 ID를 보유한다는 것입니다. 왜 EWS가 약속의 고유 ID를 저장하지 않고 왜 (appointment.Id.UniqueId)가 일정하지 않습니까?
이 문제에 대한 명확한 해결책을 찾지 못했습니다.