2012-08-06 6 views
6

Ich mag würde den Besprechungsorganisator Mail-Adresse mit dem EWS-API erhalten. Momentan bekomme ich nur ein paar Eigenschaften meines Termins. Ich habe gehört, dass Sie festlegen können, welche Eigenschaften Sie erhalten möchten. Mein Code sieht wie folgt aus:erhalten Besprechungsplaner Mail-Adresse EWS API

CalendarView cview = new CalendarView(start, end); 
        cview.PropertySet = new PropertySet(BasePropertySet.FirstClassProperties); 
        FindItemsResults<Appointment> appResults = calenFolder.FindAppointments(cview); 

Antwort

-1

gibt es eine Eigenschaft im Terminelement für das, was Organizer.Address ist

so, wenn Sie einen Termin vereinbaren müssen Variable Termin der folgende Code ruft den Veranstalter Adresse genannt

Var address = appointment.Organizer.Address; 

Versuchen diesen Code zu verwenden

var appointments = _service.FindAppointments(WellKnownFolderName.Calendar, new CalendarView(start,end)); 
foreach (var appointment in appointments) 
{System.Diagnose.Writeline(appointment.Organizer.Address)} 
+2

Ja wahr das ist. Aber diese Eigenschaft ist immer null. – andreaspfr

+0

können Sie mehr von Ihrem Code, vielleicht binden Sie die Termine nicht verbindlich. – BraveHeart

+0

Ich habe meine Antwort jetzt bearbeitet, überprüfe sie. – BraveHeart

1

Ich weiß, die Frage ist alt, aber seit ich es gefunden habe, können andere es auch finden. Und dann ist die Lösung fünf Jahre älter als diese Frage.

Die Lösung ist in der Tat einfach und schnell gefunden werden, wenn sie versuchen, dieses Problem bei den Microsoft-Foren zu schreiben:

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

Kurze Zusammenfassung:

Der Veranstalter Feld enthält keinen SMTP Adresse, wenn sie mit ExchangeService.FindAppointments abgerufen wird, aber wenn sie mit ExchangeService.BindToItems oder Appointment.Bind abgerufen wird.

1

hatte ich das gleiche Problem und es geschafft, die Organizer.Address Eigenschaft mit diesem zu füllen:

ExchangeService service = calenFolder.Service; 
service.LoadPropertiesForItems(appResults, PropertySet.FirstClassProperties);