Проблематика -
ввод и отображение в браузере дат в формате местного времени.
Вопросы:
- какой общепринятый подход?
- как это реализовать в ASP.NET?
Начиная с .Net 6, при сохранении дат в базу PostgreSQL используется UTC-формат (если не включать legacy-режим).
На стороне сервера текущее время мы теперь получаем так:
DateTime.UtcNow
А на стороне клиента (в javascript), мы преобразуем дату к локальному времени таким образом:
new Date(editDate).toLocaleString('ru', { timeZoneName: 'short' })
Как быть, если представление формируется на стороне сервера (определить часовой пояс клиента и преобразовать считанную из БД дату в его формат)?
Как сохранять даты, введённые в input-поле, пользователями разных часовых поясов?