private static ToDateTimeSinceUnixEpoch ( this dateTime ) : System.TimeSpan | ||
dateTime | this | |
return | System.TimeSpan |
private static TimeSpan ToDateTimeSinceUnixEpoch(this DateTime dateTime)
{
var dtUtc = dateTime;
if (dateTime.Kind != DateTimeKind.Utc)
{
dtUtc = dateTime.Kind == DateTimeKind.Unspecified && dateTime > DateTime.MinValue && dateTime < DateTime.MaxValue
? DateTime.SpecifyKind(dateTime.Subtract(DateTimeSerializer.LocalTimeZone.GetUtcOffset(dateTime)), DateTimeKind.Utc)
: dateTime.ToStableUniversalTime();
}
var universal = dtUtc.Subtract(UnixEpochDateTimeUtc);
return universal;
}