У меня проблема с использованием часовых поясов с Exchange2010_SP2. Моя цель - получить все данные (точнее, clientEvents) в формате даты UT C. Как я прочитал в документации по умолчанию, он возвращает данные в текущем часовом поясе системы, если не указана конфигурация для часовых поясов. Я хотел бы избежать этого. Я хочу использовать только UT C для получения моих данных. Я читал, что есть возможность использовать эту конструкцию для этого:
ExchangeService serviceEST = new ExchangeService(TimeZoneInfo.FindSystemTimeZoneById("Eastern Standard Time"));
, но приведенный выше код просто компилируется, нет класса TimeZoneInfo - код взят из документации C#, но я не смог найди что-нибудь еще. В старой версии API был конструктор
ExchangeService(ExchangeVersion requestedServerVersion, TimeZone timeZone)
, но теперь его нет, почему? В настоящее время в заголовках методов конструкторов в классе ExchangeService я всегда вижу термин «... в текущий часовой пояс системы». Есть ли способ настроить новый экземпляр ExchangeService с заданным TimeZone? Я подумал, что, возможно, метод getUserAvailability имеет некоторую возможность заставить сервис извлекать данные в конкретном / заданном часовом поясе. Хотя здесь есть дополнительный параметр AvailabilityOptions, он не предоставляет опцию для TimeZone. На самом деле у данных, которые я получаю, есть объект TimeZone, но, похоже, он работает неправильно. Название часового пояса - «Пользовательский часовой пояс». Информация хранится в AttendeeAvaialability-> workingHours-> timeZone. Я также не могу получить текущий / локальный / часовой пояс по умолчанию, который использует служба EWS. Я могу получить список всех доступных часовых поясов, но я не вижу способа получить текущий / локальный, который используется. Так что я немного рассол здесь. То, что я смог сделать, это:
TimeZone.setDefault(TimeZone.getTimeZone("UTC"));
final ExchangeService instance = new ExchangeService();
Это изменит приложение дыры для использования часового пояса UT C. Это не самый чистый способ сделать это, я действительно хотел бы избежать такого рода жесткого кодирования, но кажется, что это единственный способ, или я ошибаюсь?
Любая помощь будет высоко ценится,
ура, Павел