【问题标题】:Does Outlook 2003 support iCal 2.0 spec for updating and deleting a calendar item?Outlook 2003 是否支持 iCal 2.0 规范来更新和删除日历项目?
【发布时间】:2009-07-08 22:11:20
【问题描述】:

我们正在开发一个 asp.net 2.0 网络应用程序,该应用程序向用户发送电子邮件以保存到他们的 Outlook 2003 日历中。我们注意到,即使 ical 2.0 规范支持,更新或删除项目的代码似乎都不起作用。我们很好奇 Outlook 2003 是否忽略了这一点? Outlook 2007 的行为是否有所不同?

我们在某些情况下,事件可能会更改或被取消,这会触发电子邮件通知,但更新后的 ical 只会添加新事件,它不会删除或移动原始事件....

我们错过了什么吗?

【问题讨论】:

  • 不知道 2003 年,但我一直在从事一个项目,该项目支持在 Outlook 2007 中删除 iCal 项目。它运行没有任何问题。我不是执行该部分的人,所以我无法为您提供更多帮助。

标签: asp.net vb.net outlook icalendar


【解决方案1】:

我们现在已经能够让它删除一条消息....但没有像我们想象的那样更新....

设置我们发送的会议...

开始:VCALENDAR 版本:2.0 方法:发布 开始:事件 类别:公共 优先级:5 序列:0 用户名:1​​2345 摘要:测试 地点:测试 DTSTART:20090709T230000Z DTEND:20090710T000000Z DTSTAMP:20090713T164634Z 描述:测试 结束:事件 END:VCALENDAR

要删除,我们只需像这样更改取消方法即可发送消息:

开始:VCALENDAR 版本:2.0 方法:取消 开始:事件 类别:公共 优先级:5 序列:0 用户名:1​​2345 摘要:测试 地点:测试 DTSTART:20090709T230000Z DTEND:20090710T000000Z DTSTAMP:20090713T164634Z 描述:测试 结束:事件 END:VCALENDAR

我们最初的删除问题是我们有一个空白的组织者行。我们删除了它并取消了工作....

至于像第一行那样更新原始发布,我们一直无法做到。我们已将序列 # 从零增加到 1,它只是添加了一个新会议。我们使用相同的 UID 编号,在我们的测试中仅为 12345。

我发现这样做的唯一方法是创建一个组织者并将发布类型更改为请求类型。

在阅读 rfc2445 时,这似乎是它的设计方式。发布将始终创建新记录,顺序无关紧要。当顺序很重要时,组织者和请求方法....

在我在这里测试和阅读 stackoverflow 之后,我也找到了这个答案: ICalendar and event updates not working in Outlook

对我来说,我之前没有看到那个...... :)

这是一个示例:

开始:VCALENDAR 版本:2.0 方法:请求 开始:事件 类别:公共 DTEND:20090713T203000Z DTSTAMP:20090713T174434Z DTSTART:20090713T200000Z ORGANIZER;CN="No one special";mailto:dontemailme@email.com 优先级:5 序列:0 摘要:午餐? 用户名:1​​234567 结束:事件 END:VCALENDAR

然后更新它...

开始:VCALENDAR 版本:2.0 方法:请求 开始:事件 类别:公共 DTEND:20090713T213000Z DTSTAMP:20090713T174434Z DTSTART:20090713T210000Z ORGANIZER;CN="No one special";mailto:dontemailme@email.com 优先级:5 序列:1 摘要:午餐? 用户名:1​​234567 结束:事件 END:VCALENDAR

然后取消它....

开始:VCALENDAR 版本:2.0 方法:取消 开始:事件 类别:公共 DTEND:20090713T213000Z DTSTAMP:20090713T174434Z DTSTART:20090713T210000Z ORGANIZER;CN="No one special";mailto:dontemailme@email.com 优先级:5 序列:1 摘要:午餐? 用户名:1​​234567 结束:事件 END:VCALENDAR

序列#对于取消无关紧要......

【讨论】:

    【解决方案2】:

    我不得不说我对 Outlook 2007 的体验与你对 Outlook 2003 的体验是一样的......它完全忽略了 PUBLISH..

    我解决此问题的最佳方法是将会议用作附件.. 这样您就可以打开它,“自己制作”并使用跟踪并向与会者发送更新..

    我不认为微软有兴趣在这里与标准打交道。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-04-20
      • 2015-05-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-10-24
      • 1970-01-01
      相关资源
      最近更新 更多