Me preguntaba, ¿hay alguna manera de crear una marca de tiempo en c # a partir de una fecha y hora? Necesito un valor de precisión de milisegundos que también funcione en Compact Framework (diciendo que, dado que DateTime.ToBinary () no existe en CF).
Mi problema es que quiero almacenar este valor de una manera independiente de la base de datos para poder ordenarlo más tarde y averiguar qué valor es mayor de otro, etc.
c#
timestamp
compact-framework
database-agnostic
time-precision
Konstantinos
fuente
fuente
Respuestas:
Siempre uso algo como lo siguiente:
Esto le dará una cadena como 200905211035131468, ya que la cadena va desde los bits de orden más alto de la marca de tiempo hasta la clasificación de cadena simple de orden más bajo en sus consultas SQL se puede usar para ordenar por fecha si está pegando valores en una base de datos
fuente
Creo que puede crear una marca de fecha de estilo Unix con una precisión de un segundo utilizando lo siguiente
Ajustar el denominador le permite elegir su nivel de precisión
fuente
Puede usar la propiedad DateTime.Ticks, que es un almacenamiento largo y universal, siempre en aumento y también utilizable en el marco compacto. Solo asegúrese de que su código no se use después del 31 de diciembre de 9999;)
fuente
También puedes usar
Stopwatch.GetTimestamp (). ToString ();
fuente
cuando lo necesite en una marca de tiempo en segundos, puede usar lo siguiente:
fuente
Si desea marcas de tiempo que correspondan a tiempos reales reales, PERO también desea que sean únicas (para una instancia de aplicación determinada), puede usar el siguiente código:
fuente