如何使用C#以编程方式将ID附加到交换预约与会者?

时间:2015-11-03 15:59:31

标签: c# exchangewebservices

我试图将与会者添加到交流预约中,但我遇到了困难。我需要与会者拥有一个ID,因为一些与会者没有唯一的电子邮件地址,所以我正在做以下事情:

        foreach (Student student in Students)
        {

            if (student.hasEmail)
            {
                Attendee attendee = new Attendee(student.Email);
                attendee.Id = new ItemId(student.Id);
                addRequiredAttendee(attendee);
            }
            else
            {
                String name = student.LastName + ", " + student.FirstName;
                Attendee attendee = new Attendee(name);
                attendee.Id = new ItemId(student.Id);
                addRequiredAttendee(attendee);
            }

        }

然而,当我跑步时:

appointment.Save(calendar.Id, SendInvitationsMode.SendToNone);

我收到错误但没有发送。我不明白问题所在。当我发送而不添加ID它工作正常。有没有人遇到过这样的问题?设置ID的规格是什么?我找不到任何关于它的文档。感谢

3 个答案:

答案 0 :(得分:0)

你需要有一个有效的电子邮件地址格式才能正常工作(例如,你得到的错误应该表明这一点)在你的情况下,你应该只能伪造地址,例如

String name = student.LastName +"," + student.FirstName;    String Email = name +" @ fakeDomain.com&#34 ;;

干杯 格伦

答案 1 :(得分:0)

documentation of Attendee我们看到EmailAddress继承自<Application.Resources> <vm:ViewModelLocatorTemplate xmlns:vm="clr-namespace:MvvmLight1.ViewModel" x:Key="Locator" /> </Application.Resources> 。需要电子邮件地址,因为约会邀请需要在某处发送。设置ID无济于事。

根据您的要求,您可以创建虚假的电子邮件地址?

答案 2 :(得分:0)

很遗憾,我发现您无法将ID添加到具有emailAddress的与会者。这就是EmailAddress.Id文档页面上的内容:

  

使用Id属性时,应将Address属性设置为空引用(在Visual Basic中为Nothing)。

我现在正在做的只是为没有电子邮件的学生创建一封假电子邮件,并使用该假电子邮件作为其标识符。