我想通过EWS API获取会议组织者的邮件地址。目前,我正在获取我的约会项目的一些属性。我听说你可以设置你想要获得的属性。我的代码是这样的:
CalendarView cview = new CalendarView(start, end);
cview.PropertySet = new PropertySet(BasePropertySet.FirstClassProperties);
FindItemsResults<Appointment> appResults = calenFolder.FindAppointments(cview);
我遇到了同样的问题,并设法填充了Organizer
ExchangeService service = calenFolder.Service;
service.LoadPropertiesForItems(appResults, PropertySet.FirstClassProperties);
我知道这个问题很老,但既然我找到了,其他人也可能找到。然后,这个解决方案比这个问题早了五年。
事实上,解决方案很简单,当试图在微软论坛上发布这个问题时会很快找到:
http://social.msdn.microsoft.com/Forums/en-US/0403c00e-008d-4eb2-a061-45e60664573e/how-can-i-get-smtp-address-to-an-organizer-with-ews?forum=exchangesvrdevelopment
简要总结:
使用ExchangeService.FindAppointments检索时,组织者字段不包含SMTP地址,但使用ExchangeService.BindToItems或Appointment.Bind.
在约会项目中有一个属性,即Organizer。地址
因此,如果您有一个名为appointment的约会变量,下面的代码将检索组织者地址
Var address = appointment.Organizer.Address;
尝试使用此代码
var appointments = _service.FindAppointments(WellKnownFolderName.Calendar, new CalendarView(start,end));
foreach (var appointment in appointments)
{System.Diagnose.Writeline(appointment.Organizer.Address)}