У меня есть веб-служба для производственного приложения, которая возвращает разные результаты разным клиентам для одного и того же входящего запроса.
Я обнаружил это, настроив своих клиентов на сброс необработанных сообщений WCF в файлы трассировки, которыеЗатем я сравнил.
Для одного клиентского компьютера ответ включает дату / время, нацеленные на часовой пояс +13: 00 - он же NZDT (новозеландское летнее время) (см. Элемент ObservedDate):
<b:ObservationDTO>
<b:mVersionNumber>0</b:mVersionNumber>
<b:mBoolValue i:nil="true"></b:mBoolValue>
<b:mDateValue i:nil="true"></b:mDateValue>
<b:mIsNull>true</b:mIsNull>
<b:mNumericValue i:nil="true"></b:mNumericValue>
<b:mObservationID>0</b:mObservationID>
<b:mObservedDate>2005-09-30T00:00:00+13:00</b:mObservedDate>
<b:mTextValue i:nil="true"></b:mTextValue>
</b:ObservationDTO>
Для другого клиентского компьютера ответ включает дату / время, нацеленные на часовой пояс +12: 00 - он же NZST (стандартное время Новой Зеландии) (см. Элемент ObservedDate):
<b:ObservationDTO>
<b:mVersionNumber>0</b:mVersionNumber>
<b:mBoolValue i:nil="true"></b:mBoolValue>
<b:mDateValue i:nil="true"></b:mDateValue>
<b:mIsNull>true</b:mIsNull>
<b:mNumericValue i:nil="true"></b:mNumericValue>
<b:mObservationID>0</b:mObservationID>
<b:mObservedDate>2005-09-29T23:00:00+12:00</b:mObservedDate>
<b:mTextValue i:nil="true"></b:mTextValue>
</b:ObservationDTO>
Неисправностьклиент не получает включенную информацию о часовом поясе и поэтому показывает (для этого примера) 29 сентября 2005 г., 11:00 вечера пользователю.
У меня есть двойнойпроверено, и все задействованные машины (и клиенты, и сервер приложений, и веб-сервер) правильно настроены на NZST: