Google Calendar API插入事件

时间:2014-06-25 09:10:33

标签: c# google-app-engine

我可以阅读日历列表和事件列表。登录有任何问题。

我尝试添加新事件,我不会得到任何异常但永远不会添加。

如何创建新活动?

我的代码(我找不到.NET的v3示例,我编写了这个,可能是错误的)

Event newEvent = new Event();
newEvent.Summary = tb_Title.Text;
newEvent.Description = tb_Desc.Text;
newEvent.Start = new EventDateTime();
newEvent.Start.DateTime = dateTimePicker1.Value;
newEvent.End = new EventDateTime();
newEvent.End.DateTime = dateTimePicker1.Value.AddHours(1);

calendarService.Events.Insert(newEvent, calendarId);

1 个答案:

答案 0 :(得分:0)

  

我可以阅读日历列表和事件列表。有任何问题   登录。

这意味着您的OAuth2身份验证有效,但您仍可能选择了错误的范围/写入权限。

  

我尝试添加新事件,我不会得到任何例外但永远不会添加。

这是因为您没有执行查询。您需要使用Execute()方法。

  

我的代码(我找不到.NET的v3示例,我编写了这个,可能是错误的)

您选择的属性正常,日期格式正确。您需要更改的唯一方法是使用Execute()方法执行查询。他是基于您的代码的示例:

Event newEvent = new Event();

using (frmAddEvent frmAddEvent = new frmAddEvent()){
    frmAddEvent.ShowDialog();
    newEvent.Summary = frmAddEvent.txtTitle.Text;
    newEvent.Description = frmAddEvent.txtDesc.Text;
    newEvent.Start = new EventDateTime();
    newEvent.Start.DateTime = frmAddEvent.dateTimePicker1.Value;
    newEvent.End = new EventDateTime();
    newEvent.End.DateTime = frmAddEvent.dateTimePicker1.Value.AddHours(1);
    if (frmAddEvent.DialogResult == DialogResult.OK) {
        var eventResult = await service.Events.Insert(newEvent, calendarID).ExecuteAsync();
    }
}  

此查询返回您刚刚创建的事件而不是状态类型。