我看到使用this calendar library in C#我可以以编程方式生成带有一堆日历事件的ics文件。
但是我想要一个解决方案,如果我想订阅一个日历,那么当未来的事件被添加或删除时,该人就会得到更新。
当您从outlook订阅服务器上的ics文件时,看起来outlook只是从outlook帮助文件中获取基于此的快照:=(我假设它与我通过电子邮件发送日历的行为相同)
通过电子邮件发送日历您可以通过电子邮件将您拥有的任何日历发送给其他人。这是一种称为日历快照的Internet日历。日历显示在电子邮件正文中。但是,收到日历快照的Office Outlook 2007用户可以选择将日历作为Outlook日历打开。这样做可以以并排模式或日历覆盖模式显示日历快照和当前日历。
是否有任何程序化解决方案允许某人订阅iCalendar文件(或其他格式),该文件始终与最新的更改保持同步?
答案 0 :(得分:9)
Outlook 将基于基于服务器的.ics文件进行更新。将文件存储在某处的Web服务器上(我已成功使用Wiki页面),然后使用webcal://地址而不是http://地址。 Outlook应该自动选择它。
这通常会作为“发送/接收”的一部分进行刷新,但也可以通过“帐户设置...互联网日历”进行配置。
我完成了你想要做的事情,同样的图书馆和所有。该更新在一个大型组织中得到了很好的体验,许多人订阅了日历文件。
这也可能有所帮助:http://blogs.msdn.com/b/michael_affronti/archive/2006/05/10/594986.aspx
答案 1 :(得分:0)
看起来outlook只是从outlook帮助文件中获取基于此的快照:=(我假设它与我通过电子邮件发送日历的行为相同)
我不认为这是一个有效的假设。我公司的防火墙似乎阻止了事情,所以我无法完全测试,但Outlook中的订阅选项确实讨论了更新。
答案 2 :(得分:0)
您是否正在寻找推送通知或其他内容?
Web上的大多数基于iCal .ics的日历都希望以类似于RSS或ATOM的轮询类型方式使用,其中客户端将定期检查是否已进行任何更改,如果是,则相应地下载新内容。我的理解是,支持WebDAV的服务器可以允许一些客户端直接修改这些.ics文件,但是当订阅一个日历时,客户仍然有责任轮询和更新日历的本地快照。 / p>
我对Outlook日历对iCal的支持没有多少经验,但我使用的是Google日历,内置的iPhone日历应用程序,我也使用了Sunbird日历应用程序以及所有的当我检查它们时,它们可以非常可靠地向我显示更新。