在Google日历活动中添加与会者

时间:2013-08-07 07:53:49

标签: asp.net google-calendar-api

我正在谷歌日历集成上开发我的应用程序。当我将参加者添加到EventAttendee对象时,我收到错误“Object Not initialized”。请查看以下代码......

 Event Entry = new Event();
    Entry.Summary = MeetingName;
    Entry.Description = MeetingDetails;

    EventDateTime dt_Start = new EventDateTime();
    dt_Start.DateTime = meeting.StartTime.ToString("yyyy-MM-ddThh:mm:ss.000Z");
    Entry.Start = dt_Start;

    EventDateTime dt_End = new EventDateTime();
    dt_End.DateTime = meeting.EndTime.ToString("yyyy-MM-ddThh:mm:ss.000Z");
    Entry.End = dt_End;        
    if (invitees != null)
    {
        foreach (Participant invitee in invitees)
        {
            String str = invitee.Email;
            str = invitee.Name;
            Entry.Attendees.Add(new EventAttendee()
            {
                Email = invitee.Email,
                DisplayName = WEB.HttpUtility.HtmlDecode(invitee.Name),
                ResponseStatus = "accepted",
                Organizer=false,
                Resource=false
            });
        }
    }   

我正在做的地方“Entry.Attendees.Add(new EventAttendee()”此时我收到错误...

2 个答案:

答案 0 :(得分:1)

我认为你需要首先实例化EventAttendees列表。

尝试在创建条目后添加此内容 -

Entry.Attendees = new List<EventAttendee>();

然后你可以尝试这个来添加它们 -

var att = new EventAttendee()
                    {
                        DisplayName = "Bill Smith",
                        Email = "emailsmith@smith.test",
                        Organizer = false,
                        Resource = false,
                    };
Entry.Attendees.Add(att);

答案 1 :(得分:0)

除了与会者的电子邮件地址之外,您不应该设置任何其他内容。响应状态是供与会者设置的(为什么您能够为我创建的会议接受您创建?),并且组织者和资源属性由Google设置。可以设置DisplayName,但它不是必需的。