DateTime.Now в SharePoint Server разные: что это значит?

В одной из реализаций, там где время играет очень большую роль. Столкнулся с интересной особенностью. Данный пост может показаться абсолютно тривиальным, но, по правде говоря данная особенность доставила много неудобств.



В двух словах

В методе выполняющимся на стороне сервера SharePoint, мы использовали свойство DateTime.Now для установки метаданных элементов списка.

Я бы сказал, ну и что DateTime.Now вернули время и закончим с этим.
Но если работа осуществляется по всему миру и время деньги, в этот момент и была замечена разность во времени.

Поднялся вопрос так откуда же берется значение DateTime.Now, гипотезы:


  • Время от контекста семейств веб-сайтов и его региональных настроек.
  • Время от контекста пользователя и его региональных настроек
  • Время от часового пояса сервера

После небольшого исследования и неудачных подтверждений гипотез, получил следующий вывод:

DateTime.Now зависит от настроек часового пояса пользователя запустившего  пул приложений для конкретного веб-приложения.

Так что разные веб-приложения могут возвращать разные значения времени.

Комментарии

Популярные сообщения из этого блога

Полезности под рукой: Приятные SharePoint уведомления для пользователя

Полезности под рукой: Отправка писем при помощи REST API в SharePoint 2013