Microsoft Graph: Start- oder Enddatum eines Ereignisses kann nicht aktualisiert werden

Aug 18 2020

Ich verwende Microsoft Graph .NET SDK , um Outlook-Ereignisse zu aktualisieren. Der folgende Code aktualisiert erfolgreich die Attribute Subjectund BodyAttribute eines Ereignisses. Wenn ich jedoch versuche, die Startund / oder EndDaten des Ereignisses (vom Typ dateTimeTimeZone ) zu aktualisieren , wird der folgende Fehler angezeigt:

Frage : Was kann die Ursache des Fehlers sein und wie können wir ihn beheben? Bitte beachten Sie, dass die Veranstaltung gültig lokale Start- und Enddaten wie hat 8/21/2020 11:00AMund 8/21/2020 11:30AMjeweils. Tatsächlich wird im Debug-Modus Folgendes VS2019angezeigt:Start.get returns null

Screenshot des Fehlers :

Code :

  1. Der obige Fehler tritt auf, wenn ich die folgende Zeile Start = { DateTime = "2020-08-20T08:30:00.0000000", TimeZone = "UTC" }auskommentiere.
  2. Die Werte authProviderund "{id}"Variablen sind für den Fehler nicht so relevant, da der Code mit den realen Werten ohne die Codezeile einwandfrei funktioniert Start =.....

...

GraphServiceClient graphClient = new GraphServiceClient( authProvider );

var @event = new Event
{
    Subject = "Test subject",
    Body= new ItemBody { Content = "Test body content"}
    //Start = { DateTime = "2020-08-20T08:30:00.0000000", TimeZone = "UTC" }
};

await graphClient.Me.Events["{id}"]
    .Request()
    .UpdateAsync(@event);

Antworten

1 GlenScales Aug 20 2020 at 00:12

Sie benötigen stattdessen so etwas, da der Objekttyp in der Eigenschaft verwendet wird

            var @event = new Event
        {
            Subject = "Test subject",
            Body = new ItemBody { Content = "Test body content" },
            Start = new DateTimeTimeZone {  DateTime = "2020-08-20T08:30:00.0000000", TimeZone = "UTC" } 
        };
1 RajeevKumar Aug 20 2020 at 04:06

Sie müssen das Datum im folgenden Format hinzufügen. Hoffe, es wird Ihr Problem lösen.

var @event = new Event
    {
        Subject = "Test subject",
        Body = new ItemBody { Content = "Test body content" },
        Start = new DateTimeTimeZone {  DateTime = "2020-08-20T08:30:00.0000000", TimeZone = "GMT Standard Time" } 
    };