2013-05-24 8 views
1

У меня есть простой метод DateTimeNow, который возвращает DateTime.Now.ServiceStack metadata json failed

При запуске проекта в Visual Studio, я получаю на страницу/метаданных и я могу видеть метод в списке:

Operations: 
DateTimeNow  XML JSON 

При нажатии на ссылку XML, я получаю:

<DateTimeNowResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/MyServices.DTO"> 
    <Result>0001-01-01T00:00:00</Result> 
</DateTimeNowResponse> 

Но при нажатии на ссылку JSON, я получаю:

Server Error in '/' Application. 
-------------------------------------------------------------------------------- 
The added or subtracted value results in an un-representable DateTime. 
Parameter name: value 

Я начал с создания проекта, как показано на http://www.servicestack.net/ServiceStack.Hello/

Я использую версию 3.9.46:

ServiceStack.3.9.46\lib\net35\ServiceStack.dll 
ServiceStack.3.9.46\lib\net35\ServiceStack.ServiceInterface.dll 
ServiceStack.Common.3.9.46\lib\net35\ServiceStack.Common.dll 
ServiceStack.Common.3.9.46\lib\net35\ServiceStack.Interfaces.dll 
ServiceStack.Text.3.9.46\lib\net35\ServiceStack.Text.dll 

Визуальный проект Studio 2012 использует .NET Framework 4.5

+0

Проверено, что это работает на ServiceStack версии 3.9.35. Я получил следующий результат из метаданных JSON rendrer: {"Результат": "\/Date (-62135596800000 + 0100) \ /"} –

ответ

2

даты JSON использовать объект Date JavaScript, который представляет собой период, как число секунд с 1970-01-01 00:00:00 UTC. Вы конвертируете время, которое было до этого, поэтому оно не может быть представлено.

+0

Похоже, что в генераторе метаданных json 3.9.46 для ServiceStack появляется ошибка. , потому что я думаю, что это работало на более ранних версиях. –

+0

Я могу подтвердить, что в этой версии есть ошибка. Я только что обновился до 3.9.48, и проблема исчезла. – Junto

+0

Спасибо @Junto за обновление. –

Смежные вопросы