Проблема с сериализацией JSON в Openrasta - PullRequest
0 голосов
/ 01 декабря 2011

В настоящее время я работаю над Rest API, используя Openrasta.

В этом я передаю дату в объекте JSON на стороне сервера, например. «/ Дата (1316802600000) /» для даты (24/09/2011), которая является стандартным форматом для даты отправки. Но когда я получаю это на стороне сервера, эта дата уменьшается на 1 день (23.09.2011). Поэтому каждый раз, когда я отправляю дату, она уменьшается на 1.

Пожалуйста, предложите мне какое-то решение для этого и дайте мне знать, если я делаю какую-то ошибку.

Ответы [ 2 ]

1 голос
/ 19 декабря 2011

Синтаксический анализ DateTime JsonDataContractSerializer может быть очень неприятным, особенно при работе с часовыми поясами. Возможно, вы захотите написать свой собственный кодек json, который оборачивает сериализатор Json.NET. Синтаксический анализ DateTime является гораздо более надежным и может обрабатывать различные форматы DateTime.

Вот пример: http://gist.github.com/BobReid/8960146#file-gistfile1-cs

1 голос
/ 01 декабря 2011

Это не похоже на проблему, которая имеет много общего с OpenRasta. Это может быть проблема JsonhDataContractSerializer: либо эта, либо одна из ваших машин имеет информацию о часовом поясе, но ваш код не назначает ее правильно (скажем, обрезает ее или не использует DateTimeOffset или по любой другой причине).

Пожалуйста, отправьте часть кода от вашего клиента, который может помочь в диагностике вашей проблемы.

...