Một trong những yêu cầu của chúng tôi là tạo tệp iCalendar (.ics) và gửi từng tệp trong email dưới dạng tệp đính kèm. Chúng tôi đang sử dụng để tạo ra các file DDay.Ical.dll ics như dưới:Làm cách nào để hủy sự kiện lịch bằng tệp ics?
// Create a new iCalendar
iCalendar iCal = new iCalendar();
// Create the event, and add it to the iCalendar
Event evt = iCal.Create<Event>();
// Set information about the event
evt.Start = new iCalDateTime(SomeStartTime);
evt.End = new iCalDateTime(SomeEndTime);
evt.Location = "At so and so place";
evt.Description = "Some Description";
evt.Summary = "About Some Subject";
iCal.Method = "PUBLISH";
// Serialize (save) the iCalendar
iCalendarSerializer serializer = new iCalendarSerializer();
serializer.Serialize(iCal, @"iCalendar.ics");
quá trình Toàn bộ là:
- User1 tạo một file iCal cho ngày và thời gian cụ thể và gửi cho User2.
- User2 sẽ mở tệp ics và chấp nhận lời mời. Một mục cuộc hẹn sẽ được tạo trong triển vọng LOCAL của người dùng.
Bây giờ, giả sử, vì bất kỳ lý do nào nếu cuộc hẹn bị hủy, sau đó User1 sẽ tạo tệp ics và gửi cho User2, để User2 có thể hủy sự kiện của anh ấy khỏi triển vọng cục bộ.
Cách tạo tệp ics như vậy?
Tôi đã thử nghiệm điều này với khách hàng xem của tôi, đáng ngạc nhiên khi tôi hủy bỏ một cuộc họp từ triển vọng và đọc tập tin ics trên đầu thu, tôi không tìm thấy cờ STATUS ở đó, hãy để một mình bị hủy bỏ. Ngoài ra, VEVENT được đặt thành HỦY, nhưng tôi không chắc liệu đó có phải là một dấu hiệu đủ tốt nếu cuộc họp đã bị hủy không? Bạn có thể vui lòng cho tôi biết những thứ khác tôi có thể kiểm tra ở phía người nhận để biết liệu đây có phải là cuộc họp bị hủy không? Tôi cần nó cho một số công việc! – k2ibegin