Avatar ·

Cómo obtener Unix timestamp (marca de tiempo Unix) en C#

¡Hola a todos! Soy un desarrollador principiante de C# y tuve un problema al trabajar con fechas y horas. Necesito obtener el Unix timestamp: la cantidad de segundos transcurridos desde el 1 de enero de 1970 (época Unix). Esto es necesario para la integración con una API externa que acepta tiempo en este formato. Intenté hacer algo como: ```csharp DateTime now = DateTime.Now; long timestamp = (long)now; // Error: conversión implícita imposible ``` Pero el compilador muestra un error de que no se puede convertir DateTime a long. Luego probé usar la propiedad Ticks: ```csharp long timestamp = DateTime.Now.Ticks; ``` Pero el valor resulta enorme (por ejemplo, 638700000000000000), y claramente no es un Unix timestamp. Entiendo que Ticks cuenta desde el 1 de enero del año 0001, no desde 1970. Indíquenme cómo obtener correctamente el Unix timestamp en C#. Preferiblemente con ejemplos de código. Lo necesito tanto para el momento actual como para una fecha arbitraria. ¡Gracias de antemano!