Несоответствие запроса/ответа Signalr DateTime

Я использую службы данных WCF для «запроса» моделей данных из своего веб-приложения, но затем я использую SignalR для получения «push» обновлений.

Службы данных WCF (OData) форматируют даты как строку в формате «/Date(1319493384779)/». Это нормально, потому что затем я генерирую модели просмотра на стороне клиента (javascript), где я создаю фактические объекты Javascript Date(). SignalR также отправляет объекты DateTime с сервера клиенту как "/Date(1319493384779)/", но, похоже, он ожидает фактический объект Date() при переходе от javascript к методу концентратора сервера через Javascript. Это довольно неэффективно, потому что у меня уже есть объект модели в javascript, и я должен просто отправить его в концентратор SignalR как есть.

Кто-нибудь знает, почему это происходит?

РЕДАКТИРОВАТЬ: это сообщение, поступающее в браузер с сервера, обратите внимание на формат CreationDate - на сервере это CLR DateTime

От концентратора к браузеру

Это отправляет объект обратно в концентратор - обратите внимание на тот же формат даты... этот вызов завершается ошибкой Browser to Hub

Это ошибка введите здесь описание изображения

Если я форматирую дату так, она работает (код Javascript):

CreationDate: "13/10/2011 3:31:10 p.m."

person Adam    schedule 24.10.2011    source источник
comment
Можете ли вы показать пример того, что вы имеете в виду?   -  person davidfowl    schedule 25.10.2011
comment
Готово - добавил скрины - спасибо   -  person Adam    schedule 26.10.2011
comment
Это похоже на ошибку используемого нами сериализатора.   -  person davidfowl    schedule 28.10.2011
comment
Ах, на самом деле у меня смутное воспоминание о той же проблеме с WCF Data Services...   -  person Adam    schedule 29.10.2011


Ответы (1)


Распознанная проблема, указанная на GITHub, теперь открыта.

https://github.com/SignalR/SignalR/issues/46

person Adam    schedule 30.10.2011