我使用ASP.NET创建了一个用于将假日导入Outlook 2007并尝试设置全天事件标志的ics文件。这在多日假期中工作得很好,但对于单日来说,它似乎没有注册,我只是得到一个从午夜到午夜预订的'奇异假期'。.ics文件中的单日全天约会
根据MSDN,将开始和结束时间设置为00:00应该足以完成此操作。我也尝试过使用X-MICROSOFT-CDO-ALLDAYEVENT和X-MICROSOFT-MSNCALENDAR-ALLDAYEVENT标志,但它们似乎没有任何作用。
任何人都可以看到我要去哪里错了吗?我在下面包含了示例输出。
BEGIN:VCALENDAR
PRODID:-//Microsoft Corporation//Outlook 12.0 MIMEDIR//EN
VERSION:2.0
METHOD:PUBLISH
X-MS-OLK-FORCEINSPECTOROPEN:TRUE
BEGIN:VEVENT
CLASS:PUBLIC
DESCRIPTION:HOLIDAY\n
DTEND;VALUE=DATE:20090727
DTSTAMP:20091111T000000Z
DTSTART;VALUE=DATE:20090727
LAST-MODIFIED:20091111T000000Z
PRIORITY:5
SEQUENCE:0
SUMMARY;LANGUAGE=en-gb:HOLIDAY
TRANSP:OPAQUE
X-ALT-DESC;FMTTYPE=text/html:HOLIDAY
X-MICROSOFT-CDO-BUSYSTATUS:OOF
X-MICROSOFT-CDO-IMPORTANCE:1
X-MICROSOFT-DISALLOW-COUNTER:FALSE
X-MS-OLK-ALLOWEXTERNCHECK:TRUE
X-MS-OLK-CONFTYPE:0
X-MICROSOFT-CDO-ALLDAYEVENT:TRUE
X-MICROSOFT-MSNCALENDAR-ALLDAYEVENT:TRUE
END:VEVENT
END:VCALENDAR
我已经尝试过这种观点,它显示它在第二天午夜结束,而不是整天的事件。开始日期会是什么?我已经尝试过前一天和其他各种时间的午夜,但在Outlook 2007中似乎没有任何工作。谢谢 – Don 2011-03-29 15:55:29
这在Apple iCal中也不起作用。您需要使用atomicguava建议的解决方案。 'DTSTART:20100101' – DesignerGuy 2011-05-03 20:38:20