Внедрение TimeZone для SaaS [дубликат]

Самое простое универсальное решение проблемы: не стесняйтесь указывать display:none в вашем CSS, однако вы можете изменить его на block (или что-то еще) с помощью JavaScript, а затем вам также придется добавить класс для вашего элемента, который действительно делает переход с помощью setTimeout () . Вот и все.

I.e.:

<style>
#el {
    display: none;
    opacity: 0;
}
#el.auto-fade-in {
    opacity: 1;
    transition: all 1s ease-out; /* future, future, please come sooner! */
    -webkit-transition: all 1s ease-out;
    -moz-transition: all 1s ease-out;
    -o-transition: all 1s ease-out;
}
</style>

<div id=el>Well, well, well</div>

<script>
var el = document.getElementById('el');
el.style.display = 'block';
setTimeout(function () { el.className = 'auto-fade-in' }, 0);
</script>

Проверено в последних разумных браузерах. Очевидно, что он не должен работать в IE9 или ранее.

1
задан Rahul Tripathi 13 October 2015 в 11:47
поделиться

3 ответа

только для sql 2016 , он учитывает экономию летнего времени.

CREATE FUNCTION GetBelgiumTime 
(
)
RETURNS datetime2
AS BEGIN  
       declare @dateoffset datetimeoffset
       SET  @dateoffset = convert(VARCHAR(2000),(SELECT GETUTCDATE() AT TIME ZONE  'Central European Standard Time'),126 )


       declare @date datetime2
       set @date = convert(datetime2, LEFT(@dateoffset,28),126)

    set @date = DATEADD(HOUR, convert(int,LEFT(RIGHT(@dateoffset,5), 2)), @date) 
       RETURN @date
END

select  dbo.GetBelgiumTime() as BelgiumDateAndTime 
1
ответ дан Aflred 28 August 2018 в 10:23
поделиться

В SQL Server 2016 forward (и Azure SQL DB) вы можете сделать это:

SELECT SYSDATETIMEOFFSET() AT TIME ZONE @tz

, где @tz является допустимым идентификатором часового пояса Windows, например 'Pacific Standard Time', 'Central European Standard Time' и т. д.

Однако, если вы используете более старую версию SQL Server или предпочитаете использовать идентификаторы часовых поясов IANA, вы можете использовать мой проект поддержки сервера часовых поясов SQL Server для выполните следующие действия:

SELECT Tzdb.UtcToLocal(GETUTCDATE(), @tz)

, где @tz является стандартным именем часового пояса IANA, таким как 'America/Los_Angeles' или 'Europe/Budapest'.

0
ответ дан Matt Johnson 28 August 2018 в 10:23
поделиться

Вы можете попробовать использовать switchoffset следующим образом:

select switchoffset(CAST(myDate as datetimeoffset),'+05:30')  from someTable

Вместо '+05:30' вы можете указать свое значение часового пояса.

Если вы хотите использовать часовой пояс с GETUTCDATE (), просто добавьте его так

select cast(GETUTCDATE() as varchar(20)) + '+5:30'

, и если вы хотите сохранить его как дату только тогда

select  switchoffset(CAST(GETUTCDATE() as datetimeoffset),'+05:30')
-1
ответ дан Rahul Tripathi 28 August 2018 в 10:23
поделиться
Другие вопросы по тегам:

Похожие вопросы: