Ich habe einige DDay iCal-Code, der Ereignisse aus unserer SQL-Datenbank und erstellt eine iCal-Datei, so dass Benutzer den Internet-Kalender in Outlook oder Google Kalender abonnieren können. Es funktioniert einwandfrei, außer wenn ein Benutzer in einer anderen Zeitzone mit seinem Kalender synchronisiert, zeigt er die Uhrzeit falsch an. Unser Webserver befindet sich in einer zentralen Zeit, so dass ein Benutzer in der östlichen Zeit die Zeit als 1 Stunde vor der tatsächlichen Ereigniszeit sehen würde. Grundsätzlich möchte ich, dass iCal Zeitzonen ignoriert und nur die Start- und Endzeit anzeigt, wie sie in meiner Datenbank erscheint. Ich habe das Gefühl, das wird unmöglich sein und wir müssen die Zeitumwandlung selbst machen.DDay iCal ändern Zeit in Outlook 2010
Dim iCal As iCalendar = New iCalendar()
Dim evt As [Event]
iCal.AddLocalTimeZone()
Dim dtStart As DateTime = dtr_SQL("StartDate").ToString()
Dim dtEnd As DateTime = dtr_SQL("EndDate").ToString()
Dim startDate As iCalDateTime = dtStart.ToUniversalTime()
Dim endDate As iCalDateTime = dtEnd.ToUniversalTime()
evt = iCal.Create(Of [Event])()
evt.Start = startDate
evt.Start.HasTime = True
evt.Start.IsUniversalTime = True
evt.End = endDate
evt.End.HasTime = True
evt.End.IsUniversalTime = True
Dies funktioniert jedoch nicht. Ich ändere meinen Computer auf Eastern Standard Time, synchronisiere den Internetkalender mit Outlook, und wenn ich den Code ausführe, stößt er immer noch eine Stunde in Outlook an. Ich habe versucht, die Zeitzonen einzustellen und es funktioniert nie. – GS442
Ich habe möglicherweise missverstanden - führen Benutzer Code aus, den Sie geschrieben haben, oder greifen sie direkt von einem Outlook-Termin (oder Google Kalender-Termin) zu, der bereits von Ihrem Code verarbeitet wurde? – Dustin
Dies ist ein Live-iCal-Feed, der mit Outlook oder Google Kalender synchronisiert wird. Wenn Benutzer den Internetkalender in Outlook abonnieren, wird die Seite alle 5 Minuten abgefragt, um mögliche Änderungen zu erhalten. – GS442