Tarihler, saatler ve saat dilimleri
.NET, temel DateTime yapıya ek olarak saat dilimleriyle çalışmayı destekleyen aşağıdaki sınıfları da sağlar:
-
Sistemin yerel saat dilimi ve Eşgüdümlü Evrensel Saat (UTC) bölgesiyle çalışmak için bu sınıfı kullanın. sınıfının işlevselliği TimeZone büyük ölçüde sınıf tarafından TimeZoneInfo değiştirilir.
-
Sistemde önceden tanımlanmış herhangi bir saat dilimiyle çalışmak, yeni saat dilimleri oluşturmak ve tarihleri ve saatleri bir saat diliminden diğerine kolayca dönüştürmek için bu sınıfı kullanın. Yeni geliştirme için sınıfı yerine sınıfını TimeZone kullanınTimeZoneInfo.
-
UTC'den uzaklığı (veya farkı) bilinen tarih ve saatlerle çalışmak için bu yapıyı kullanın. Yapı, DateTimeOffset bir tarih ve saat değerini utc'den bu saatin uzaklığıyla birleştirir. UTC ile ilişkisi nedeniyle, tek bir tarih ve saat değeri kesin olarak tek bir zaman noktasını tanımlar. Bu, bir değeri bir DateTimeOffset bilgisayardan başka bir DateTime değere daha taşınabilir hale getirir.
.NET 6'dan itibaren aşağıdaki türler kullanılabilir:
-
Yalnızca tarihi temsil eden bir değerle çalışırken bu yapıyı kullanın. Tarih, günün başından sonuna kadar tüm günü temsil eder.
DateOnly
arasında bir aralığı0001-01-01
9999-12-31
vardır. Ayrıca bu tür, belirli bir saat olmadan ay, gün ve yıl birleşimini temsil eder. Daha önce kodunuzda saati dikkate almayan bir tarihi temsil eden bir tür kullandıysanızDateTime
, bu türü yerine kullanın. -
Tarih içermeyen bir saati temsil etmek için bu yapıyı kullanın. Saat, belirli olmayan bir günün saatlerini, dakikalarını ve saniyelerini temsil eder.
TimeOnly
için bir aralığı00:00:00.0000000
vardır23:59:59.9999999
. Bu tür, bir saati temsil etmek için bu türleri kullandığınızda kodunuzdaki veTimeSpan
türlerini değiştirmekDateTime
için kullanılabilir.
Sonraki bölümde, saat dilimleriyle çalışmak ve tarih ve saatleri bir saat diliminden diğerine dönüştürebilen saat dilimine duyarlı uygulamalar oluşturmak için ihtiyacınız olan bilgiler sağlanır.
Bu bölümde
Saat dilimine genel bakış
Saat dilimine duyarlı uygulamalar oluşturmayla ilgili terminolojiyi, kavramları ve sorunları açıklar.
DateTime, DateTimeOffset, TimeSpan ve TimeZoneInfo arasında seçim yapma
Tarih ve saat verileriyle çalışırken , DateTimeOffsetve TimeZoneInfo türlerinin DateTimene zaman kullanılacağını açıklar.
Yerel sistemde tanımlanan saat dilimlerini bulma
Yerel sistemde bulunan saat dilimlerinin nasıl numaralandırıldığı açıklanır.
Nasıl yapılır: Bir bilgisayarda mevcut saat dilimlerini numaralandırma
Bir bilgisayarın kayıt defterinde tanımlanan saat dilimlerini numaralandıran ve kullanıcıların listeden önceden tanımlanmış bir saat dilimi seçmesine olanak sağlayan örnekler sağlar.
Nasıl yapılır: Ön tanımlı UTC ve yerel saat dilimi nesnelerine erişim
Eşgüdümlü Evrensel Saat'e ve yerel saat dilimine erişmeyi açıklar.
Nasıl yapılır: Bir TimeZoneInfo nesnesinin örneğini oluşturma
Yerel sistem kayıt defterinden bir TimeZoneInfo nesnenin örneğini oluşturmayı açıklar.
Bir DateTimeOffset nesnesinin örneğini oluşturma
Bir DateTimeOffset nesnenin örneğini oluşturma yollarını ve bir DateTime değerin bir değere DateTimeOffset dönüştürülebileceği yöntemleri açıklar.
Nasıl yapılır: Ayarlama kuralları olmadan saat dilimleri oluşturma
Gün ışığından yararlanma saatine geçişi desteklemeyen özel bir saat diliminin nasıl oluşturulacağını açıklar.
Nasıl yapılır: Ayarlama kuralları ile saat dilimleri oluşturma
Gün ışığından yararlanma saatine bir veya daha fazla geçişi destekleyen özel bir saat diliminin nasıl oluşturulacağını açıklar.
Saat dilimlerini kaydetme ve geri yükleme
TimeZoneInfo Saat dilimi verilerini seri hale getirme ve seri durumdan çıkarma desteğini açıklar ve bu özelliklerin kullanılabilmesi için bazı senaryoları gösterir.
Nasıl yapılır: Saat dilimlerini eklenmiş kaynağa kaydetme
Özel saat dilimi oluşturma ve bilgilerini bir kaynak dosyasına kaydetmeyi açıklar.
Nasıl yapılır: Katıştırılmış bir kaynaktan saat dilimlerini geri yükleme
Eklenmiş bir kaynak dosyasına kaydedilmiş özel saat dilimlerinin nasıl örneklendiğini açıklar.
Tarih ve saatlerle aritmetik işlemler gerçekleştirme
Ve değerlerini ekleme, çıkarma ve karşılaştırma ile DateTimeDateTimeOffset ilgili sorunları açıklar.
Nasıl yapılır: Tarih ve saat aritmetiğinde saat dilimlerini kullanma
Saat dilimi ayarlama kurallarını yansıtan tarih ve saat aritmetiğinin nasıl gerçekleştirildiğini açıklar.
DateTime ve DateTimeOffset arasında dönüştürme
ve DateTimeOffset değerleri arasında DateTime dönüştürmeyi açıklar.
Saatleri saat dilimleri arasında dönüştürme
Zamanların bir saat diliminden diğerine nasıl dönüştürüldüğünü açıklar.
Nasıl yapılır: Belirsiz saatleri çözme
Belirsiz bir saati saat diliminin standart saatine eşleyerek nasıl çözümleyeceğinizi açıklar.
Nasıl yapılır: Kullanıcıların belirsiz saatleri çözmelerine izin verme
Bir kullanıcının belirsiz bir yerel saat ile Eşgüdümlü Evrensel Saat arasındaki eşlemeyi belirlemesine nasıl izin verileceğini açıklar.