Önemli iCalendar RFC 2445 Ayrıntıları

Aspose iCalendar Nesne Modeli Hakkında

Aspose.Email, Aspose tarafından sağlanan tüm sınıfları içerir iCalendar bileşen RecurrencePattern ve RecurrenceRule Aspose’in temel sınıflarıdır iCalendar, ve ilgili RFC 2445 öğelerinin somut uygulamalarını sağlayabilirsiniz.

Bu RecurrencePattern sınıfı, tüm tekrar desenini temsil eder. Varsayılan yapıcıyı kullanarak baştan yeni bir tekrar deseni oluşturabilir veya mevcut bir deseni yükleyebilirsiniz CalendarRecurrence. The RecurrenceRule sınıfı, bir tekrar deseninin RRULE veya EXRULE kısmını temsil eder. RecurrenceRule iCalendar standardındaki karşılıklarıyla doğrudan eşleşen bir dizi özelliği ortaya çıkarır. Örneğin, ByMonth iCalendar’da BYMONTH ile eşleşir vb. Değerlerini inceleyerek veya ayarlayarak RecurrenceRule bir tekrar kuralını analiz edebileceğiniz veya değiştirebileceğiniz özellikler. Daha fazla bilgi ve kod örnekleri için bakınız RecurrencePattern ve RecurrenceRule API Referansında.

Önemli iCalendar RFC 2445 Ayrıntıları

Bu bölüm aşağıdaki konuları içerir:

  • Tarih ve Saat Biçimleri.
  • DATE.
  • Yerel Zaman ile DATE-TIME.
  • UTC Zamanı ile DATE-TIME.
  • Yerel Zaman ve Zaman Dilimi ile DATE-TIME.
  • BYWEEKNO ISO 8601 Uyumluluğu Sağlar

Tarih ve Saat Biçimleri

Tarihler veya ilişkili zamanları olan tarih değerleri, tekrar deseni belirtilirken DTSTART, UNTIL, EXDATE ve RDATE öğelerinde kullanılabilir. iCalendar, takvim tarihini içeren değerleri tanımlamak için DATE değer tipini ve belirli bir takvim tarihi ve günün saatini belirten değerleri tanımlamak için DATE-TIME tipini tanımlar. DATE-TIME değerleri üç biçimde belirtilebilir:

  • Yerel zaman.
  • UTC zamanı.
  • Yerel saat ve zaman dilimi.

DATE

iCalendar standardına göre, DATE değerleri yyyyMMdd biçimini izlemelidir. Aşağıdaki örnek 14 Temmuz 1997’yi temsil eder: 19970714

Yerel Zaman ile DATE-TIME

Yerel zaman biçimindeki tarih, UTC tanımlayıcısı içermeyen ve bir zaman dilimine referans vermeyen bir tarih-saat değeridir. Örneğin, aşağıdaki ifade 18 Ocak 1998, 23:00’ı gösterir: DTSTART:19980118T230000. Bu tip tarih-saat değerlerine "yüzen" denir ve belirli bir zaman dilimine bağlı değildir. Hangi zaman dilimi gözlemlenirse gözlemlensin aynı saat, dakika ve saniye değerini temsil etmek için kullanılır.

UTC Zamanı ile DATE-TIME

UTC zamanı veya mutlak zaman içeren tarih, zaman değerine eklenen Latin BÜYÜK HARF Z sonek karakteri (UTC tanımlayıcısı) ile tanımlanır. Örneğin, aşağıdaki ifade 19 Ocak 1998, 07:00 UTC’yi gösterir: DTSTART:19980119T070000Z Lütfen Aspose’un iCalendar UTC formatındaki Z soneki yok sayar ve zamanı yerel saat olarak değerlendirir. RFC2445 standardı, tekrar deseninin UNTIL kuralında belirtilen zaman kısmının UTC formatında olması gerektiğini belirtir. Bu çok garip bir ifadedir ve aslında standartta yanlış hesaplanan örnekler vardır. Aspose iCalendar UNTIL kuralında zamanı herhangi bir biçimde kabul eder.

Yerel Zaman ve Zaman Dilimi ile DATE-TIME

Zaman dilimini referans göstermek için DATE-TIME, TZID özelliği ile değiştirilir. Örneğin, aşağıdaki ifade 19 Ocak 1998 tarihinde New York’ta saat 02:00’ı gösterir: DTSTART;TZID=US-Eastern:19980119T020000. Lütfen Aspose’un iCalendar şu anda TZID parametresini yok sayar ve zamanı yerel saat olarak değerlendirir.

BYWEEKNO ISO 8601 Uyumluluğu Sağlar

BYWEEKNO’yu yalnızca uyum sağlandığında kullan ISO 8601 gereklidir. ISO 8601 tarafından tanımlanan hafta numaraları normal anlamdaki hafta numaralarından çok farklıdır. ISO 8601’e göre, takvim yılının birinci haftası, içinde en az dört gün bulunduran ilk haftadır. Bu kural, ISO 8601 uyumluluğu gerektiren uygulamalara özgü bir algoritma oluşturur ve diğer kullanım alanları için neredeyse uygulanamaz hâle getirir. ISO 8601, bazı Avrupa banka ve finans uygulamaları tarafından desteklenir. Ayrıca televizyon reklamlarının rezervasyonu için de kullanılır. BYWEEKNO kuralı, yılın haftalarını tanımlayan sayıların virgülle ayrılmış bir listesini belirtir. Geçerli değerler 1 ile 53 arasındadır. Bu, ISO 8601’de tanımlanan hafta numaralandırmasına göre haftalara karşılık gelir. BYWEEKNO sadece YEARLY kuralları için geçerlidir.