Ich verwende Office 365 V2-DLL und versuche, DateTime-Wert für Start und End-Eigenschaften von IEvent zu aktualisieren, aber es aktualisiert das Ereignis ohne Fehler nicht.Aktualisiere DateTime-Wert für Start und Ende von IEvent Office 365
Mein Code: -
try
{
var taskUpdateMeeting = Task<bool>.Run(async() =>
{
bool updateStatus = false;
IEvent meetingToUpdate = await service.Me.Events.GetById(meetingEventId).ExecuteAsync();
if (meetingToUpdate != null)
{
meetingToUpdate = GetUpdatedEvent(meetingToUpdate, meeting, location, phone); // Function to update the IEvent Obj values needed to update
meetingToUpdate.Start.DateTime = "2016-08-06T19:00:00.0000000"; // Sample value to DateTime property
meetingToUpdate.End.DateTime = "2016-08-06T19:30:00.0000000";
meetingToUpdate.Start.TimeZone = "Asia/Kolkata"; // Sample value to TimeZone property
meetingToUpdate.End.TimeZone = "Asia/Kolkata";
if (invitees != null && invitees.Count > 0)
invitees.ForEach((invitee) => meetingToUpdate.Attendees.Add(new Attendee()
{
EmailAddress = new EmailAddress()
{
Name = invitee.Name,
Address = invitee.Email
},
Status = new ResponseStatus()
{
Response = ResponseType.Accepted,
Time = DateTime.Now
}
}));
await meetingToUpdate.UpdateAsync(true);
await meetingToUpdate.SaveChangesAsync();
//await meetingToUpdate.SaveChangesAsync();
//await service.Context.SaveChangesAsync();
updateStatus = true;
}
return updateStatus;
});
Task.WaitAll(taskUpdateMeeting);
updated = taskUpdateMeeting.Result;
}
catch (Exception ex)
{
InsertExceptionLog(userID, username, "UpdateCalendarEvent Excp -> " + ex.GetType(), ex.Message, ex.InnerException != null ? ex.InnerException.ToString() : null, ex.ToString() + ex.StackTrace);
updated = false;
}
Das einzige Problem ist mit der Start- und Endzeit. Alle anderen Eigenschaften werden korrekt aktualisiert, wenn die UpdateAsync-Methode aufgerufen wird. Anfangs befindet sich die Besprechung in derselben Zeitzone wie in der aktualisierten TimeZone-Eigenschaft. Bitte schlagen Sie vor, wenn ich hier etwas falsch mache. Lassen Sie mich wissen, ob weitere Informationen erforderlich sind.
Ich empfehle Fiddler installiert und erfassen Sie die API-Anforderungen über die Leitung. Dies ist normalerweise die nützlichste Sache für mich bei der Fehlerbehebung der API. –