Не получается точное время от UniversalDateTime - PullRequest
0 голосов
/ 16 апреля 2009

Я отправляю vcal через почту в веб-приложении с конвертированием datetime в универсальное datetime. Если я запускаю веб-приложение локально (локальный sevser в Индии), я получаю правильное время в своем vcal. Но запустите приложение в режиме реального времени (сервер в США), тогда не получите точное время с разницей в полтора часа. Пожалуйста, предложите мне.

код:

Dim result As StringBuilder = New StringBuilder()
        result.AppendFormat("BEGIN:VCALENDAR{0}", System.Environment.NewLine)
        result.AppendFormat("BEGIN:VEVENT{0}", System.Environment.NewLine)
        result.AppendFormat("SUMMARY:{0}{1}", subject, System.Environment.NewLine)
        result.AppendFormat("LOCATION:{0}{1}", location, System.Environment.NewLine)
        result.AppendFormat("DTSTART:{0}{1}", startDate.ToUniversalTime().ToString("yyyyMMdd\THHmmss\Z"), System.Environment.NewLine)
        result.AppendFormat("DTEND:{0}{1}", endDate.ToUniversalTime().ToString("yyyyMMdd\THHmmss\Z"), System.Environment.NewLine)
        result.AppendFormat("DTSTAMP:{0}{1}", DateTime.Now.ToUniversalTime().ToString("yyyyMMdd\THHmmss\Z"), System.Environment.NewLine)
        result.AppendFormat("DESCRIPTION:{0}{1}", description, System.Environment.NewLine)
        result.AppendFormat("END:VEVENT{0}", System.Environment.NewLine)
        result.AppendFormat("END:VCALENDAR{0}", System.Environment.NewLine)
        Return result.ToString()

1 Ответ

1 голос
/ 20 мая 2009

Поскольку IST (стандартное индийское время) в UTC + 5:30, а американские часовые пояса в UTC-4 (восточный) - UTC-7 (тихоокеанский), вы можете оказаться на полутора часах ( фактически, десять с половиной часов, но без учета am / pm), если сервер работает в центральное летнее время (CDT).

Я нашел vcalendar на www.vcalendar.org , который быстро перенаправляет вас. Похоже, это приложение PHP. И, глядя на руководство по PHP, выясняется, что формат H - 24-часовой формат; но для этого требуется один H, а не двойной H. PDF для документации на vcalendar.org - это AWOL (404 - за исключением того, что он перенаправляет вас на более полезную страницу, чем просто 404, но его все еще нет!) 1005 *

Предложение: укажите, в каком часовом поясе работает ваш сервер в США (есть 4 основных и несколько вспомогательных). Проверьте, правдоподобна ли гипотеза «1,5 часа = 10,5 часов по модулю 12». И внимательно посмотрите на форматы даты / времени и значение «ЧЧ».

...