的iCalendar不是由谷歌日历可读。 [英] ICalendar not readable by google calendar.

查看:586
本文介绍了的iCalendar不是由谷歌日历可读。的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

操作系统:WinXP中
程序和版本用于访问谷歌日历(FF3.5):

我正在开发一个脚本(基于现有的vCal ASP.NET类我在网上找到)生成的.ics文件。导入到Outlook 2003时当我尝试导入到谷歌日历这个文件完美的作品,我得到以下错误:

无法导入事件:无法处理您的iCal / CSV文件。

我不知道太多的的vCal格式或语法,但一切看起来没什么问题。我会后下面的样品测试的.ics日历:

  BEGIN:VCALENDAR
PRODID: - // jpalm.se//iCalendar例如使用ASP.NET MVC // EN
版本:2.0
CALSCALE:GREGORIAN
方法:发布
X-MS-白斑-FORCEINSPECTOROPEN:TRUE
BEGIN:VEVENT
DTSTART:20100304T000000Z
DTEND:20100304T000000Z
TRANSP:不透明
顺序:0
UID:7c9d6dd7-41f2-4171-8ae4-35820974efa4描述:UBA:Project20100321:萨格尔。摘要:第一个里程碑
END:VEVENT
X-MS-白斑-FORCEINSPECTOROPEN:TRUE
BEGIN:VEVENT
DTSTART:20100330T230000Z
DTEND:20100330T230000Z
TRANSP:不透明
顺序:0
UID:8a982519-b99b-429A-8dad-c0f95c50d0e6描述:UBA:Project20100321:imanage2010分摘要:即将到来的里程碑
END:VEVENT
X-MS-白斑-FORCEINSPECTOROPEN:TRUE
BEGIN:VEVENT
DTSTART:20100329T230000Z
DTEND:20100329T230000Z
TRANSP:不透明
顺序:0
UID:588750a1-6f10-4b5d-8a51-3f3818024726描述:UBA:Project20100321:萨格尔。摘要:测试
END:VEVENT
X-MS-白斑-FORCEINSPECTOROPEN:TRUE
BEGIN:VEVENT
DTSTART:20100407T230000Z
DTEND:20100407T230000Z
TRANSP:不透明
顺序:0
UID:36eaa726-a0a0-40a1-ba7c-09857f8ed006描述:UBA:Project20100321:imanage2010分摘要:拉德应用程式开发者
END:VEVENT
X-MS-白斑-FORCEINSPECTOROPEN:TRUE
BEGIN:VEVENT
DTSTART:20100408T125632Z
DTEND:20100408T125632Z
TRANSP:不透明
顺序:0
UID:8521ad53-916a-43cc-8eeb-42c1b3d670d3描述:UBA:Project20100321:imanage2010分摘要:这是一个测试毫秒
END:VEVENT
X-MS-白斑-FORCEINSPECTOROPEN:TRUE
BEGIN:VEVENT
DTSTART:20100415T125643Z
DTEND:20100415T125643Z
TRANSP:不透明
顺序:0
UID:e4b295d8-2271-4393-9899-3e9c858f4e8c描述:UBA:Project20100321:imanage2010分摘要:测试msssss
END:VEVENT
X-MS-白斑-FORCEINSPECTOROPEN:TRUE
BEGIN:VEVENT
DTSTART:20100430T055201Z
DTEND:20100430T055201Z
TRANSP:不透明
顺序:0
UID:1e464698-1064-4cb2-8166-2a843b63ca5a描述:UBA:Project20100321:imanage2010分摘要:这是在4月30日测试的新里程碑
END:VEVENT
X-MS-白斑-FORCEINSPECTOROPEN:TRUE
BEGIN:VEVENT
DTSTART:20100731T093917Z
DTEND:20100731T093917Z
TRANSP:不透明
顺序:0
UID:5262ef58-73bc-4d66-a207-4e884e249629描述:UBA:Project20100321:imanage2010分摘要:555555555555555555
END:VEVENT
X-MS-白斑-FORCEINSPECTOROPEN:TRUE
BEGIN:VEVENT
DTSTART:20100328T230000Z
DTEND:20100328T230000Z
TRANSP:不透明
顺序:0
UID:f654262d-714e-41d9-9690-005bb467f8aa描述:UBA:无题项目:imanage2010分摘要:第一个里程碑
END:VEVENT
X-MS-白斑-FORCEINSPECTOROPEN:TRUE
BEGIN:VEVENT
DTSTART:20100401T095537Z
DTEND:20100401T095537Z
TRANSP:不透明
顺序:0
UID:3f4a6c16-f460-457d-A281-b4c010958796描述:UBA:ProjectIcal:imanage2010分摘要:新的MS的iCal
END:VEVENT
X-MS-白斑-FORCEINSPECTOROPEN:TRUE
BEGIN:VEVENT
DTSTART:20100331T230000Z
DTEND:20100331T230000Z
TRANSP:不透明
顺序:0
UID:e5bf28d1-3559-48e9-90f8-2b5233489a13描述:UBA:ProjectIcal:imanage2010分摘要:新的MS 2的iCal
END:VEVENT
END:VCALENDAR

和产生上述code的来源是什么,但MVC视图:

 <%@导入命名空间=iManageProjectPM.Controllers%GT;
<%@页面语言=C#继承=System.Web.Mvc.ViewPage<&的iCalendar GT;%GT;
BEGIN:VCALENDAR
版本:2.0<%,如果(Model.Events.Count→1)
             {%GT;
CALSCALE:GREGORIAN
方法:发布<%}%GT;
X-MS-白斑-FORCEINSPECTOROPEN:TRUE
<%的foreach(在Model.Events VAR EVNT){%GT;
BEGIN:VEVENT
DTSTART&所述;%= Model.GetTimeString(evnt.StartTime)%GT;
DTEND&所述;%= Model.GetTimeString(evnt.EndTime)%GT;
TRANSP:不透明
顺序:0
UID:LT;%= evnt.UID%GT;
说明:其中;%= evnt.Desc%GT;
发明内容:其中;%= evnt.Title%GT;
END:VEVENT<%}%GT;
END:VCALENDAR


解决方案

与iCal问题反馈是不同的日历是挑剔不同的东西,而规范是,至少对我来说,有种难以效仿。但是,神崎做了伟大的工作,使该规范明确了像我这样的程序员。

现在,您的iCal饲料也需要精确到换行分隔符(苹果的iCal将在末尾错换行不进口饲料),我发现这3个验证器的组合效果最好:

最严格的验证竟然出现了假阳性对我来说(例如,它报道说,实际上不是按照规范的错误错误),但抓住了一些错误前两个都没有,这就是为什么我会建议你运行饲料通过他们三个。

Operating system : WinXP Program and version you use to access Google Calendar (FF3.5):

I'm developing a script (based on an existing vCal ASP.NET class I found online) to generate an .ics file. This file works perfectly when importing to Outlook 2003. When I try to import to Google Calendar, I get the following error:

Failed to import events: Unable to process your iCal/CSV file..

I don't know too much about the vCal format or syntax, but everything looks fine to me. I'll post the sample test calendar .ics below:

BEGIN:VCALENDAR
PRODID:-//jpalm.se//iCalendar example with ASP.NET MVC//EN
VERSION:2.0
CALSCALE:GREGORIAN
METHOD:PUBLISH
X-MS-OLK-FORCEINSPECTOROPEN:TRUE
BEGIN:VEVENT
DTSTART:20100304T000000Z
DTEND:20100304T000000Z
TRANSP:OPAQUE
SEQUENCE:0
UID:7c9d6dd7-41f2-4171-8ae4-35820974efa4

DESCRIPTION:uba:Project20100321:sagar .

SUMMARY:First Milestone
END:VEVENT
X-MS-OLK-FORCEINSPECTOROPEN:TRUE
BEGIN:VEVENT
DTSTART:20100330T230000Z
DTEND:20100330T230000Z
TRANSP:OPAQUE
SEQUENCE:0
UID:8a982519-b99b-429a-8dad-c0f95c50d0e6

DESCRIPTION:uba:Project20100321:imanage2010 pm

SUMMARY:upcoming milestones
END:VEVENT
X-MS-OLK-FORCEINSPECTOROPEN:TRUE
BEGIN:VEVENT
DTSTART:20100329T230000Z
DTEND:20100329T230000Z
TRANSP:OPAQUE
SEQUENCE:0
UID:588750a1-6f10-4b5d-8a51-3f3818024726

DESCRIPTION:uba:Project20100321:sagar .

SUMMARY:test
END:VEVENT
X-MS-OLK-FORCEINSPECTOROPEN:TRUE
BEGIN:VEVENT
DTSTART:20100407T230000Z
DTEND:20100407T230000Z
TRANSP:OPAQUE
SEQUENCE:0
UID:36eaa726-a0a0-40a1-ba7c-09857f8ed006

DESCRIPTION:uba:Project20100321:imanage2010 pm

SUMMARY:Rad apps devs
END:VEVENT
X-MS-OLK-FORCEINSPECTOROPEN:TRUE
BEGIN:VEVENT
DTSTART:20100408T125632Z
DTEND:20100408T125632Z
TRANSP:OPAQUE
SEQUENCE:0
UID:8521ad53-916a-43cc-8eeb-42c1b3d670d3

DESCRIPTION:uba:Project20100321:imanage2010 pm

SUMMARY:this is a test ms
END:VEVENT
X-MS-OLK-FORCEINSPECTOROPEN:TRUE
BEGIN:VEVENT
DTSTART:20100415T125643Z
DTEND:20100415T125643Z
TRANSP:OPAQUE
SEQUENCE:0
UID:e4b295d8-2271-4393-9899-3e9c858f4e8c

DESCRIPTION:uba:Project20100321:imanage2010 pm

SUMMARY:Test msssss
END:VEVENT
X-MS-OLK-FORCEINSPECTOROPEN:TRUE
BEGIN:VEVENT
DTSTART:20100430T055201Z
DTEND:20100430T055201Z
TRANSP:OPAQUE
SEQUENCE:0
UID:1e464698-1064-4cb2-8166-2a843b63ca5a

DESCRIPTION:uba:Project20100321:imanage2010 pm

SUMMARY:this is a new milestones for testing on 30th april
END:VEVENT
X-MS-OLK-FORCEINSPECTOROPEN:TRUE
BEGIN:VEVENT
DTSTART:20100731T093917Z
DTEND:20100731T093917Z
TRANSP:OPAQUE
SEQUENCE:0
UID:5262ef58-73bc-4d66-a207-4e884e249629

DESCRIPTION:uba:Project20100321:imanage2010 pm

SUMMARY:555555555555555555
END:VEVENT
X-MS-OLK-FORCEINSPECTOROPEN:TRUE
BEGIN:VEVENT
DTSTART:20100328T230000Z
DTEND:20100328T230000Z
TRANSP:OPAQUE
SEQUENCE:0
UID:f654262d-714e-41d9-9690-005bb467f8aa

DESCRIPTION:uba:Untitled project:imanage2010 pm

SUMMARY:first milestone
END:VEVENT
X-MS-OLK-FORCEINSPECTOROPEN:TRUE
BEGIN:VEVENT
DTSTART:20100401T095537Z
DTEND:20100401T095537Z
TRANSP:OPAQUE
SEQUENCE:0
UID:3f4a6c16-f460-457d-a281-b4c010958796

DESCRIPTION:uba:ProjectIcal:imanage2010 pm

SUMMARY:new ms ical
END:VEVENT
X-MS-OLK-FORCEINSPECTOROPEN:TRUE
BEGIN:VEVENT
DTSTART:20100331T230000Z
DTEND:20100331T230000Z
TRANSP:OPAQUE
SEQUENCE:0
UID:e5bf28d1-3559-48e9-90f8-2b5233489a13

DESCRIPTION:uba:ProjectIcal:imanage2010 pm

SUMMARY:new ms 2 ical
END:VEVENT
END:VCALENDAR

And the source for generating the above code is which is nothing but the mvc view::

<%@ Import Namespace ="iManageProjectPM.Controllers" %>
<%@ Page Language="C#" Inherits="System.Web.Mvc.ViewPage<iCalendar>"%>
BEGIN:VCALENDAR
VERSION:2.0<%if (Model.Events.Count > 1)
             {%>
CALSCALE:GREGORIAN
METHOD:PUBLISH<%}%>
X-MS-OLK-FORCEINSPECTOROPEN:TRUE
<%foreach(var evnt in Model.Events){%>
BEGIN:VEVENT
DTSTART<%=Model.GetTimeString(evnt.StartTime)%>
DTEND<%=Model.GetTimeString(evnt.EndTime)%>
TRANSP:OPAQUE
SEQUENCE:0
UID:<%=evnt.UID%>
DESCRIPTION:<%=evnt.Desc%>
SUMMARY:<%=evnt.Title%>
END:VEVENT<%}%>
END:VCALENDAR

解决方案

The problem with ical feeds is that different calendars are picky about different things, and the spec is, at least for me, kind of hard to follow. However, Kanzaki does a great job of making the spec clear for programmers like me.

Now, your ical feed also needs to be exact down to the newline break (Apple's ical won't import feeds with the wrong newline at the end) and I've found a combination of these 3 validators to work best:

The most strict validator actually had false positives for me (ie, it reported errors that actually aren't errors according to the spec), but caught some errors the first two didn't, that's why I would recommend running your feed through all three of them.

这篇关于的iCalendar不是由谷歌日历可读。的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆