В настоящее время я сохраняю datetime.utcnow в базе данных на лазури, но я не уверен, как отображать правильное время в зависимости от клиента.
Должен ли я использовать utc? Должен ли я сохранить часовой пояс, чтобы я мог пересчитать время? Могу ли я использовать культуру, чтобы изменить время на время клиента?Показывать текущее время и дату в зависимости от клиента
ответ
Ваш лучший вариант - хранить DateTime как UTC time и настраивать его по местному времени (для текущего местоположения пользователя) каждый раз, когда вы читаете его из базы данных.
Вы можете использовать JavaScript, чтобы определить часовой пояс пользователя:
new Date().gettimezoneOffset()
Мне нужно смещение сэкономленного времени в db? – imGreg
Нет, в этом нет необходимости. Просто сохраните его вот так. DateTime serverDateTime = DateTime.Now; DateTime dbDateTime = serverDateTime.ToUniversalTime(); –
Вы можете использовать один из них, установив предпочтения пользователя в его/ее профиле. Используйте этот параметр, чтобы указать дату. – Adil
@imGreg Пожалуйста, обратитесь к этому: http://stackoverflow.com/questions/6525538/convert-utc-date-time-to-local-date-time-using-javascript –