Sharepoint RenderPattern и «нейтральные» значения DateTime - PullRequest
0 голосов
/ 05 августа 2010

Я создал настраиваемое поле Sharepoint и настраиваемую платформу рендеринга для него:

<RenderPattern Name="DisplayPattern">

          <Column Name="Date" HTMLEncode="FALSE" Format="DateTime"/>

</RenderPattern>

Так что в основном он записывает необработанное значение поля «Дата».В настоящее время я использую выходную клиентскую часть, используя Javascript:

...
var date = new Date(rawDateString);
...

Здесь я читаю необработанную строку даты и анализирую ее в объект даты.Пока это работает нормально, но мне интересно, если это стабильное решение.Повлияют ли на это настройки региона / языка / времени Sharepoint?Я хочу, чтобы это работало при разных настройках.

Спасибо за любую помощь.

1 Ответ

1 голос
/ 06 августа 2010

Да, это может вызвать проблемы. В каком формате ваше поле SharePoint и шаблон вывода выводятся в нем?

JavaScript работает на стороне клиента, и региональные настройки не обязательно совпадают с сайтом SharePoint.

Например, какая дата "08-06-2010"? В США - 6 августа, в Европе - 8 июня.

Если у вас есть пользователь с региональными настройками в Великобритании на рабочем столе, который обращается к сайту с региональными настройками в США, что произойдет?

Если вы используете только строку в JavaScript и она не должна быть удобочитаемой и соответствовать региональным настройкам сайтов, тогда используйте формат, который остается неизменным независимо от региональных настроек, например формат RFC1123

// c# - Gives "Mon, 15 Jun 2009 20:45:30 GMT" regardless of regional settings
return date.ToString("R");
...