Ich möchte alle Besprechungen für eine Anzahl von Benutzern in eine Datenbank importieren. Ich verwende die EWS-verwaltete API und C#Ändert sich der Wert von ICalRecurrenceId jemals für jede Instanz einer wiederkehrenden Besprechung
Wenn ich Meetings aus jedem Postfach importiere, kann es vorkommen, dass dasselbe Meeting mehrmals auftritt, wenn alle Benutzer zu diesem Meeting eingeladen wurden.
Für Besprechungen in einer einzigen Instanz kann ich den Wert ICalUid
verwenden, um die eindeutige ID der Besprechung abzurufen, sodass ich nur eine Instanz davon speichern kann.
Bei wiederkehrenden Besprechungen ist jedoch nicht klar, welches zusätzliche Feld ich verwenden soll (zusammen mit ICalUid
), um jede Instanz einer wiederkehrenden Besprechungsserie zu identifizieren.
Kann ich zuverlässig ICalRecurrenceId
verwenden? Wird sich dieser Wert jemals ändern? Ist es konsistent, wenn die Besprechungsinstanz aus mehreren Postfächern importiert wird? Gibt es ein besseres Feld, das ich verwenden kann/sollte, um meine Bedürfnisse zu erfüllen?
Hinweis - Ich habe das Feld verwendet, aber dies gibt einen anderen Wert zurück, wenn dieselbe Besprechung von verschiedenen Postfächern zurückgegeben wird. Ich muss in der Lage sein, eine Besprechungsinstanz unabhängig von dem Postfach zu identifizieren, aus dem sie importiert wurde.
Wenn jedoch eine bestimmte Instanz einer wiederkehrenden Besprechungsserie aktualisiert und in eine andere Zeit verschoben wird, zeigt ICalUID + Start (DateTime) auf die neue aktualisierte Uhrzeit oder die ursprüngliche Uhrzeit der Instanz. Ich muss in der Lage sein, jede Instanz korrekt zu identifizieren, so dass ich die Instanz in meiner Datenbank aktualisieren kann und keinen neuen Datensatz einfügen kann. – kevin
Ja, das wäre ein Problem. – pjneary