DateTime.Now выводит текущее московское время, но почему при переводе DateTime.Now в int
(int)(DateTime.Now - new DateTime(1970, 1, 1, 0, 0, 0)).TotalSeconds
И затем обратно в DateTime получается уже не Московское время, а время на три часа позже
Вы проверяете значение в Unix Time конвертере.
Unix Time - это количество секунд, прошедших с 1970-01-01 00:00:00 UTC.
Проблема в том, что оператор вычитания для DateTime не учитывает свойство Kind и таймзону вообще. Перед его использованием нужно явно приводить оба аргумента к одной таймзоне, иначе результат поплывет:
The Subtraction(DateTime, DateTime) method does not consider the value of the Kind property of the two DateTime values when performing the subtraction. Before subtracting DateTime objects, ensure that the objects represent times in the same time zone. Otherwise, the result will include the difference between time zones.
Вот этот difference в 3 часа вы и видите.
Вам нужно или использовать время в UTC при вычислении:
(int)(DateTime.UtcNow - new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc)).TotalSeconds;
В случае не Now:
(int)(somedatetime.ToUniversalTime() - new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc)).TotalSeconds;
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Подскажите, пожалуйста, какой-нибудь простой пример использования Memory Mapped File на C#(Как вариант, обмен состояниями потока между родительской...
Необходимо загрузить AssetBundle с хостингаНаписал такой код для загрузки с сервера: