.
Dalam Rangka Kerja .NET, DateTime dan DateTimeOffset adalah dua cara yang berbeza, masing -masing dengan kelebihan dan kekurangan dan senario yang berkenaan.
DateTime
DateTime bermaksud "masa kalendar", lokasi tertentu pada kalendar (contohnya, "masa timur"). Ia mempunyai dua atribut, <.> .Kind dan .
.kind Masa yang ditentukan adalah tidak ditentukan (tiada kalendar yang disambungkan), tempatan (berdasarkan zon waktu semasa) atau
utc (diselaraskan di dunia). -
.utcdateTime Ia adalah perwakilan UTC yang setara dengan masa kalendar.
DateTimeOffset
DateTimeOffset bermaksud "masa seketika", yang merupakan titik masa umum untuk semua orang. Ia menangkap tempatan
dan - utc masa sebagai entiti tunggal:
.localdateTime menunjukkan masa tempatan zon waktu yang ditentukan.
.utcdates
bermaksud momen yang sama di UTC.
.offset adalah perbezaan antara masa tempatan dan UTC.
Bilakah ia akan digunakan?
-
DateTime:
- menunjukkan masa (contohnya, "" waktu timur pada pukul 9:00 pagi ").
Tukar antara masa dan UTC.
- Walau bagaimanapun, berhati -hati untuk merawat hipotesis. Kinda adalah keadaan yang tidak disifatkan.
DateTimeOffset:
Pastikan ketepatan masa tertentu.
menjejaki masa dengan waktu tempatan yang berkaitan (contohnya, "" waktu timur pada pukul 9:00 pagi pada 1 Januari, 2023 "). -
Apabila mengubah suai DateTimeOffset yang direkodkan sebelum ini, hanya mengimbangi tidak mencukupi untuk memastikan ketepatannya.
-
- Aktiviti: Perspektif jurugambar
-
Bayangkan seorang jurugambar berdiri pada garis masa kalendar dan menggunakan kamera untuk berdiri pada orang yang berdiri pada garis masa serta -merta. Perspektif kamera mewakili .offset DateTimeOffset. Walaupun zon waktu mungkin berubah, semua orang menunjuk pada saat yang sama. Walau bagaimanapun, diketahui bahawa jumlah offset tidak mencukupi untuk menentukan zon waktu tertentu.
Pada masa yang sama, UTC mewakili kamera yang dipasang pada tripod, dengan tangan yang kukuh dan anjakan sifar. -
Amalan Terbaik
-
Apabila membandingkan nilai DateTimeOffset, menyeragamkannya ke dalam anjakan sifar. -
Untuk ujian unit, ujian nilai DateTimeOffset dan sifat -sifat. -
Berhati -hati dengan penukaran DateTime yang tersembunyi ke DateTimeOffset kerana mereka boleh membawa kepada hasil yang tidak dijangka.
Atas ialah kandungan terperinci DateTime vs DateTimeOffset: Bilakah anda harus menggunakan masa kalendar serta -merta di .net?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!
Kenyataan:Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn