如何在Google日历中创建“recurData”?

时间:2010-03-09 13:58:00

标签: c# google-calendar-api icalendar

我想使用Google API创建Calendar的定期事件。 我正在关注链接:

  1. Google Calendar API

    我没有得到如何创建“recurData”。 我无法修改String并将其作为参数传递。 尝试过DDay.iCal版本0.80。也。

  2. DDay.iCal

  3. 给出了一些示例代码。我试过了。 我可以创建“.ics”文件。

    但是当我将此文件内容传递为“recurData”

    获取错误: {“执行请求失败:http://www.google.com/calendar/feeds/user@domain.com/private/full?gsessionid=AHItK5wrSIoJVawFjGt-0g”}

    我的icf文件内容为:

    BEGIN:VCALENDAR
    VERSION:2.0
    PRODID:-//DDay.iCal//NONSGML ddaysoftware.com//EN
    BEGIN:VEVENT
    CREATED:20100309T132930Z
    DESCRIPTION:The event description
    DTEND:20100310T020000
    DTSTAMP:20100309T132930Z
    DTSTART:20100309T080000
    LOCATION:Event location
    SEQUENCE:0
    SUMMARY:18 hour event summary
    UID:396c6b22-277f-4496-bbe1-d3692dc1b223
    END:VEVENT
    BEGIN:VEVENT
    CREATED:20100309T132930Z
    DTEND;VALUE=DATE:20100315
    DTSTAMP:20100309T132930Z
    DTSTART;VALUE=DATE:20100314
    SEQUENCE:0
    SUMMARY:All-day event
    UID:ac25cdaf-4e95-49ad-a770-f04f3afc1a2f
    END:VEVENT
    END:VCALENDAR
    

    我使用“Example6”制作了它。

1 个答案:

答案 0 :(得分:2)

它认为此示例将告诉我们您使用EventEntry类创建日历条目。然后将重复传递给该条目。

在Google的示例中,DTSTART和DTEND字段代表重复的开始和结束。

EventEntry myEntry = new EventEntry();
myEntry.Title.Text = "Hello recurring Event!";
// Set a location for the event.
Where eventLocation = new Where();
eventLocation.ValueString = "here and there";
entry.Locations.Add(eventLocation);

// Any other event properties

// Recurring event:
String recurData =
  "DTSTART;VALUE=DATE:20070501\r\n" +
  "DTEND;VALUE=DATE:20070502\r\n" +
  "RRULE:FREQ=WEEKLY;BYDAY=Tu;UNTIL=20070904\r\n";

Recurrence recurrence = new Recurrence();
recurrence.Value = recurData;
myEntry.Recurrence = recurrence;