Дата и время переноса между Javascript и C#

#javascript #c# #date #datetime

Вопрос:

Я разрабатываю приложение, которое имеет дело с датой и временем в веб-интерфейсе, с JavaScript в объект Date, и отправляет эту информацию в API на основе C#… до сих пор я думал о преобразовании в дату и время, выбранные пользователем в веб-интерфейсе с помощью getTime() функции, поэтому я могу получить его миллисекунд, а затем преобразовать их в datetime в C# с помощью следующей функции

  public static DateTime GetDateFromMilliseconds(double unixTimeStamp)
    { 
        System.DateTime dtDateTime = new DateTime(1970, 1, 1, 0, 0, 0, 0, System.DateTimeKind.Utc);
        dtDateTime = dtDateTime.AddMilliseconds(unixTimeStamp).ToLocalTime();
        return dtDateTime;
    }
 

Итак, я хотел бы знать, есть ли другой лучший способ справиться с этим?

Комментарии:

1. ISO8601-ваш друг.

2. xkcd.com/1179

Ответ №1:

Более новые версии C# включают методы работы с метками времени Unix. В этом случае использование DateTimeOffset.FromUnixTimeMilliseconds() сэкономит вам несколько строк кода.

Документация: https://docs.microsoft.com/en-us/dotnet/api/system.datetimeoffset.из юнистимиллисекунд?просмотр=нетто-5.0