Saya bertanya-tanya, apakah ada cara untuk membuat stempel waktu di c # dari datetime? Saya membutuhkan nilai presisi milidetik yang juga berfungsi di Compact Framework (mengatakan bahwa sejak DateTime.ToBinary () tidak ada di CF).
Masalah saya adalah saya ingin menyimpan nilai ini dalam basis data agnostik sehingga saya dapat mengurutkannya nanti dan mencari tahu nilai mana yang lebih besar dari yang lain, dll.
c#
timestamp
compact-framework
database-agnostic
time-precision
Konstantinos
sumber
sumber
Jawaban:
Saya selalu menggunakan sesuatu seperti berikut:
Ini akan memberi Anda string seperti 200905211035131468, saat string beralih dari bit urutan tertinggi stempel waktu ke urutan terendah, penyortiran string sederhana dalam kueri SQL Anda dapat digunakan untuk mengurutkan berdasarkan tanggal jika Anda menempelkan nilai dalam database
sumber
Saya yakin Anda dapat membuat stempel tanggal gaya unix yang akurat untuk satu detik menggunakan yang berikut ini
Menyesuaikan penyebut memungkinkan Anda memilih tingkat presisi
sumber
Anda dapat menggunakan properti DateTime.Ticks, yang merupakan penyimpanan yang panjang dan universal, selalu bertambah dan dapat digunakan pada kerangka kerja yang ringkas juga. Pastikan saja kode Anda tidak digunakan setelah 31 Desember 9999;)
sumber
Anda juga bisa menggunakan
Stopwatch.GetTimestamp (). ToString ();
sumber
saat Anda membutuhkan stempel waktu dalam hitungan detik, Anda dapat menggunakan yang berikut ini:
sumber
Jika Anda ingin stempel waktu yang sesuai dengan waktu nyata aktual TETAPI juga ingin mereka unik (untuk contoh aplikasi tertentu), Anda dapat menggunakan kode berikut:
sumber