У меня есть лазурный веб-сервис, который доставляет XML-файлы нескольким клиентам.Parsing Date Time Строка возвращается Неправильно
Пользователь отправит XML-файл в веб-службу, и он де-сериализует XML в Object, а затем сериализует его в формате XML, требуемом клиентом.
Я столкнулся с нечетной ситуацией, где в XML-файле, отправляемом в веб-службу, есть два разных формата DateTime, в этом случае DateTimes в XML-файле, который был выведен, неверны. Однако, если я передаю два DateTimes в двух отдельных файлах, они правильно обрабатываются.
Вот два DateTimes:
Date = "2015-09-23T14: 30: 00 + 01: 00"
Date = "2015-09-23T14: 30: 00"
при проанализирован в файле с одной или другой стороны они оба разобрать, как 14:30, который является правильным, однако, когда оба формата в файле второго DateTime разбирает в 15:30 и первым 14:30.
Я попытался назначить CultureInfo, установив по местному времени.
Я использую XmlSerializer Class и XmlSerializer.Deserialize Method, чтобы прочитать XML-файл, отправленный веб-службе на объект, который я создал.
У меня тогда есть простой картограф, который записывает значения в XML и изменяет несколько имен атрибутов и узлов. Код для записи DateTime в строку является:
xmlWriter.WriteAttributeString("startdatetime", dateTime.ToString("s"))
Что действительно бросает меня в том, что все это работает, когда они находятся в отдельных файлах, но не тогда, когда он находится в файле с двумя отдельными форматами DateTime.
Наверняка вы должны использовать общий формат времени UTC в своем решении? – DermFrench
Да, я должен, но мой менеджер не будет продолжать делать это в настоящее время. –
Что происходит, когда вы меняете свои свойства с 'DateTime' на' DateTimeOffset'? – Rob