Ошибка передачи данных DateTime в качестве параметра QueryString для Servicestack.net Получить метод

StackOverflow https://stackoverflow.com/questions/9447175

Вопрос

Я пытаюсь пройти объект dateTime в качестве параметра строки запроса на метод Websivice, построенный с Servicestack.net.

Дата правильно закодирована URL при прохождении, но я продолжаю получать следующую ошибку:

"Message":"KeyValueDataContractDeserializer: Error converting to type: String was not recognized as a valid DateTime.
.

Любые идеи того, как исправить это?

Вот пример URL-адреса DateTime I прошел: 2% 2F24% 2F2012 + 5% 3A13% 3A02 + PM

Это было полезно?

Решение

Если вы имеют пропустить datetimes как строки, попробуйте пропустить их в однозначном формате.Я предполагаю, что вы связываете 24 февраля 2012 года, 17:13:02 - что-то вроде следующее было бы однозначным:

2012-02-24T17:13:02
.

e.g.Если вы Форматирование Дата в .NET, используйте "O"или «S»


Это ничем делать с кодировкой URL-адреса - это делать с прохождением данных однозначно - даты, такие как 01/02/2012, могут быть интерпретированы как минимум двумя способами - 1 февраля или 2 января этогогод, на двоих.

Другие советы

Вы смотрели на отсутствие веб-сайта, принять строковый параметр, а затем с помощью datetime.parse или datetime.triparse для преобразования строки в dateTime?

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top