我正在编写一个简单的Outlook插件,我需要让所需的与会者参加预约。
为此,我使用以下代码:
...
Outlook.AppointmentItem appointment theCurrentAppointment =
Inspector.CurrentItem as Outlook.AppointmentItem;
String attendees = appointment.RequiredAttendees;
/// attendees is empty if names are not checked
/// otherwise has the correct value
此代码仅在我使用检查名称功能(CTRL + K)时才有效,否则返回空字符串。
可以通过编程方式在C#中检查所需与会者的姓名(到约会)?
很抱歉,但C#不是我的编程语言,我不知道我是否使用了正确的术语。
如何重现错误:
如何解决问题(手动,而不是以编程方式)
我需要在保存约会之前知道RequiredAttendees的值。所以我无法保存它,然后检查RequiredAttendees的值。
答案 0 :(得分:2)
在检查与会者列表之前,我认为您首先需要通过以下方式保存约会项目:
AppointmentItem.Save();
参考:https://msdn.microsoft.com/en-us/library/microsoft.office.interop.outlook._appointmentitem.save.aspx
保存后,再次获取该约会对象并运行获取所需参加者所需的代码(如下所示)。
字符串变量与会者将包含一个以分号分隔的字符串,其中包含每个与会者的姓名。
从那里,您可以通过以下方式解析它:
string [] names = attendees.Split(';');
将返回与会者姓名的数组。
有关详细信息,请参阅_ AppointmentItem.RequiredAttendees属性。
答案 1 :(得分:0)
不是使用RequiredAttendees属性,而是遍历“收件人”集合中的所有收件人,并检查Recipient.Type == olTo
(必需)。