gpt4 book ai didi

outlook - 如何使用ics文件取消日历事件?

转载 作者:行者123 更新时间:2023-12-04 03:30:00 28 4
gpt4 key购买 nike

我们的要求之一是创建iCalendar文件(.ics),并将每个文件作为附件发送到电子邮件中。我们使用DDay.Ical.dll来创建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");


完整的过程是:


User1为特定的日期和时间创建一个iCal文件,并将其发送给User2。
User2将打开ics文件并接受邀请。约会项目将在User2的LOCAL外观中创建。


现在,假设由于某种原因取消了约会,则User1必须创建一个ics文件并将其发送给User2,以便User2可以从本地Outlook中取消其事件。

如何创建这样的ics文件?

最佳答案

文件的创建方式与原始ics文件相同。事件状态将有所不同。 UID将标识事件,序列号将指示更新的优先级,然后将记录事件详细信息(更改或取消)

如果要在发出邀请后更改/取消事件,则需要通过其UID标识事件/约会,并分配比原始ics事件更大的SEQUENCE号。

UID(唯一标识符):http://tools.ietf.org/html/rfc5545#page-117

顺序:http://tools.ietf.org/html/rfc5545#page-138

并设置事件状态

             / "CANCELLED"    ;Indicates event was cancelled.


状态: http://tools.ietf.org/html/rfc5545#page-92

哦-方法
如果您需要发送取消事件,则UID应该与原始事件相同,并且组件属性应设置为取消Ex。
方法:取消
状态:已取消

当然,只有在接收者随后实际单击以将事件加载/订阅到第一次日历应用程序中时,这才“取消”该事件。
对于已“订阅”了远程ic的应用程序-当它们下次执行“更新”时,应检查更新是否已处理并覆盖原始事件。

关于outlook - 如何使用ics文件取消日历事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10551764/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com