SQL veritabanımızdan olayları alan ve kullanıcıların Outlook veya Google Takvimindeki internet takvimlerine abone olabilmeleri için bir iCal dosyası oluşturan bazı DDay iCal kodlarım var. Farklı bir saat dilimindeki bir kullanıcının takvimlerine senkronize etmesi durumunda, saati yanlış görüntülediği durumlar dışında iyi çalışıyor. Web sunucumuz merkezi zamandadır, bu nedenle doğudaki bir kullanıcı, gerçek olay saatinden 1 saat önce zamanı görecektir. Temel olarak iCal'in zaman dilimlerini yok saymasını ve veritabanımda göründüğü gibi başlangıç ve bitiş zamanlarını göstermesini istiyorum. Bunun imkansız olacağını ve zaman dönüşümünü kendimiz yapmak zorunda kalacağımızı hissediyorum.Outlook 2010'da DDay iCal değişen süresi
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
Bu işe yaramıyor. Bilgisayarımı Doğu Standart Saati olarak değiştiririm, Internet takvimini Outlook ile eşleştiririm ve kodu çalıştırdığımda hala Outlook'un içinde bir saatin geçmesine neden oluyor. Saat dilimlerini ayarlamayı denedim ve asla işe yaramıyor. – GS442
Yanlış anlaşılmış olabilir - kullanıcılar yazdığınız herhangi bir kodu çalıştırıyor mu, yoksa doğrudan kodunuz tarafından işlenmiş bir Outlook randevusu (veya Google Takvim randevusu) üzerinden mi erişiyorlar? – Dustin
Bu, Outlook veya Google Takvim ile senkronize edilen canlı bir iCal özet akışı olması anlamına gelir. Kullanıcılar Outlook'taki İnternet Takvimine abone olduğunda, olası değişiklikleri almak için sayfayı her 5 dakikada bir kontrol eder. – GS442