Я работаю над приложением, целевая аудитория которого расположена по всему миру. Моей платформой разработки является ASP.Net/Sql Server, и в настоящее время оба размещены на одном и том же выделенном сервере.
Возможно, сервер Sql может быть перемещен на другой сервер и в веб-приложение для размещения на другом сервере. Часовой пояс может отличаться для обоих серверов.
В настоящее время мы находимся в стадии разработки и должны работать с концепцией универсальной даты, а не сражаться на более поздних этапах.
Наша база данных в настоящее время структурирована со следующими типами столбцов для даты и времени.
DateTime (мм / дд / гггг чч: мм: сс), SmallDateTime (содержит только часть даты мм / дд / гггг 12:00:00), Varchar (содержит hhMMss только в 24-часовом формате)
В настоящее время мы сохраняем GetDate () Sql Server , DateTime.Now из C # , т. Е. ASP.NET, javascript datetime и любую другую дату напрямую. В настоящее время нет конвертации в UTC или ничего подобного. В настоящий момент мы не храним ни TimeZone, ни какие-либо смещения.
Как мне решать проблемы, связанные с DateTime, когда
Вызов хранимой процедуры для сохранения DateTime из пользовательского интерфейса в базу данных
Отображение данных из хранимой процедуры в пользовательский интерфейс
Отображение данных с сервера ASP.NET на клиентский браузер
Сохранение данных из браузера клиента на сервере ASP.NET
Пожалуйста, предложите несколько примеров кода для каждого случая вместе с переходом на летнее время