Size: a a a

2020 February 27

V

Vyacheslav in pro.net
В принципе, присвоение EST можно было опустить для простоты. Дело не в нём.
источник

IC

Ilya Chernoudov in pro.net
Vyacheslav
Кто-то ещё об эти грабли спотыкался?


DateTimeOffset f(long msVal) {
   TimeZoneInfo EST = TimeZoneInfo.GetSystemTimeZones().Where(x => x.Id == "Eastern Standard Time").SingleOrDefault() ?? TimeZoneInfo.FindSystemTimeZoneById("America/New_York");

   var dt = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc).AddSeconds(msVal / 1000);

   return TimeZoneInfo.ConvertTime(dt, EST);
}


Задачка не для слабонервных.
А почему не datetimeoffset?
источник

RS

Rustam Sayfutdinov in pro.net
Ilya Chernoudov
А почему не datetimeoffset?
Рекомендуется?
источник

RS

Rustam Sayfutdinov in pro.net
источник

IC

Ilya Chernoudov in pro.net
Rustam Sayfutdinov
Рекомендуется?
Именно!
источник

G

Gopneg in pro.net
Vyacheslav
Кто-то ещё об эти грабли спотыкался?


DateTimeOffset f(long msVal) {
   TimeZoneInfo EST = TimeZoneInfo.GetSystemTimeZones().Where(x => x.Id == "Eastern Standard Time").SingleOrDefault() ?? TimeZoneInfo.FindSystemTimeZoneById("America/New_York");

   var dt = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc).AddSeconds(msVal / 1000);

   return TimeZoneInfo.ConvertTime(dt, EST);
}


Задачка не для слабонервных.
а чо с граблями-то? а то по коду я грабель кроме датетаймоффсета не вижу
но это очевидно осознанный выбор
источник

VS

Vasily Shapenko in pro.net
Преобразование юникс тайм выглядит странно
источник

G

Gopneg in pro.net
Vasily Shapenko
Преобразование юникс тайм выглядит странно
яб сказал упорото
но использование оффсета уже само по себе упоротость %)
источник

VS

Vasily Shapenko in pro.net
Я как-то обхожусь ToLocalTime. У меня, правда,скедулеров нет всяких
источник

K

Kate in pro.net
Спасибо
источник

M

Mary in pro.net
Vyacheslav
Кто-то ещё об эти грабли спотыкался?


DateTimeOffset f(long msVal) {
   TimeZoneInfo EST = TimeZoneInfo.GetSystemTimeZones().Where(x => x.Id == "Eastern Standard Time").SingleOrDefault() ?? TimeZoneInfo.FindSystemTimeZoneById("America/New_York");

   var dt = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc).AddSeconds(msVal / 1000);

   return TimeZoneInfo.ConvertTime(dt, EST);
}


Задачка не для слабонервных.
А в чем грабли кроме отсутствия кросплатформенности?
источник

AH

Ayrat Hudaygulov in pro.net
Ilya Chernoudov
Именно!
Да ну, тоже не панацея. Знать оффсет недостаточно, нужна таймзона, а её нет.

DateTimeOffset говна самовар.

Unpopular opinion:
Если вы пользуетесь UTC, то вам должно быть похуй DateTime или DateTimeOffset.
Если вам важно знать время на клиентах, то DateTimeOffset вам не поможет, или вы не понимаете как работают таймзоны. И тут только NodaTime выручит.
источник

B

Bonart in pro.net
Айрат как всегда несет горькую правду в массы
источник

IC

Ilya Chernoudov in pro.net
Ayrat Hudaygulov
Да ну, тоже не панацея. Знать оффсет недостаточно, нужна таймзона, а её нет.

DateTimeOffset говна самовар.

Unpopular opinion:
Если вы пользуетесь UTC, то вам должно быть похуй DateTime или DateTimeOffset.
Если вам важно знать время на клиентах, то DateTimeOffset вам не поможет, или вы не понимаете как работают таймзоны. И тут только NodaTime выручит.
наебать ты меня хочешь
источник

AH

Ayrat Hudaygulov in pro.net
В джаве кстати JodaTime в стандартной либе заменила время
источник

IC

Ilya Chernoudov in pro.net
дайт тайм не хранит информацию о тайм зоне
источник

IC

Ilya Chernoudov in pro.net
а оффсет хранит
источник

AH

Ayrat Hudaygulov in pro.net
Там внедрили нормальную систему времени в JDK
источник

E

EgorBo in pro.net
джон скит в нашем канале! какая честь
источник

B

Bonart in pro.net
Ilya Chernoudov
дайт тайм не хранит информацию о тайм зоне
И datatimeoffset тоже
источник