#c_sharp
На локальной машине функция DateTime.Now.ToString() дает результат 27.06.2016 15:27:55 , а при развертывании на сервер 6/28/2016 1:14:55 AM Как привести второй вариант в первому? Желательно без разбора строк.
Ответы
Ответ 1
DateTime.Now.ToString(CultureInfo.GetCultureInfo("ru-ru")) Класс CultureInfo находится в пространстве имен System.Globalization. Если получение строкового представления даты вызывается многократно в разных местах, и каждый раз явно указывать язык неудобно, то можно установить локаль в рамках всего треда: Thread.CurrentThread.CurrentCulture = CultureInfo.GetCultureInfo("ru-ru"); Если сервер находится в другом часовом поясе, а дату нужно получить, например, по московскому времени, то воспользуйтесь классом TimeZoneInfo: static string GetCurrentDateTime() { var tz = TimeZoneInfo.FindSystemTimeZoneById("Russian Standard Time"); return TimeZoneInfo.ConvertTimeFromUtc(DateTime.UtcNow, tz) .ToString(CultureInfo.GetCultureInfo("ru-ru")); } Список идентификаторов часовых поясов можно получить, вызвав TimeZoneInfo.GetSystemTimeZones().
Комментариев нет:
Отправить комментарий