/// <summary> /// 根据主题查询会议 /// </summary> /// <param name="senderAppointmentSubject"></param> /// <param name="config"></param> /// <returns></returns> public static MeetingMessage GetSenderMeeting(string senderAppointmentSubject, ExchangeAdminConfig config) { InitializeEws(config); SearchFilter.IsEqualTo senderMeetingMessageSearchBySubject = new SearchFilter.IsEqualTo(MeetingMessageSchema.Subject, senderAppointmentSubject); FindItemsResults <Item> senderMeetingRequestResult = Service.FindItems(WellKnownFolderName.Inbox, senderMeetingMessageSearchBySubject, new ItemView(1)); MeetingMessage senderMeetingMessage = senderMeetingRequestResult.First() as MeetingMessage; senderMeetingMessage.Load(); return(senderMeetingMessage); }
public static bool DeleteMeeting(ItemId meetingId) { Appointment meeting = Appointment.Bind(Service, meetingId, new PropertySet()); // Delete the meeting by using the Delete method. meeting.CancelMeeting(); // Verify that the meeting has been deleted by looking for a matching subject in the Deleted Items folder's first entry. ItemView itemView = new ItemView(1); itemView.Traversal = ItemTraversal.Shallow; // Just retrieve the properties you need. itemView.PropertySet = new PropertySet(ItemSchema.Id, ItemSchema.ParentFolderId, ItemSchema.Subject); // Note that the FindItems method results in a call to EWS. FindItemsResults <Item> deletedItems = Service.FindItems(WellKnownFolderName.DeletedItems, itemView); Item deletedItem = deletedItems.First(); Folder parentFolder = Folder.Bind(Service, deletedItem.ParentFolderId, new PropertySet(FolderSchema.DisplayName)); Console.WriteLine("The meeting " + "\"" + deletedItem.Subject + "\"" + " is now in the " + parentFolder.DisplayName + " folder."); return(true); }