信号器日期时间请求/响应差异

发布于 2024-12-12 00:17:56 字数 763 浏览 0 评论 0原文

我使用 WCF 数据服务从我的 Web 应用程序“查询”数据模型,然后使用 SignalR 接收“推送”更新。

WCF 数据服务 (OData) 将日期格式化为“/Date(1319493384779)/”格式的字符串。这很好,因为我然后生成客户端(javascript)视图模型,在其中创建实际的 Javascript Date() 对象。 SignalR 还将 DateTime 对象作为“/Date(1319493384779)/”从服务器发送到客户端,但在通过 Javascript 从 javascript 传递到服务器集线器方法时,它似乎期望实际的 Date() 对象。 这是相当低效的,因为我已经有一个 JavaScript 模型对象,并且我应该能够将其按原样发送到 SignalR 集线器。

有人知道为什么会发生这种情况吗?

编辑: 这是一条从服务器到达浏览器的消息,请注意 CreationDate 的格式 - 在服务器上,这是一个 CLR DateTime

这是将对象发送回集线器 - 请注意完全相同的日期格式...此调用失败 浏览器到集线器

这是错误 在此处输入图像描述

如果我像这样设置日期格式,它就可以工作(Javascript代码):

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

I am using WCF data services to 'query' for data models from my web application, but then I use SignalR to receive 'push' updates.

WCF Data Services (OData) formats dates as a string in the format "/Date(1319493384779)/". This is fine, because I then generate client-side (javascript) viewmodels where I create actual Javascript Date() objects.
SignalR also sends DateTime objects from the server to the client as "/Date(1319493384779)/", but it appears to expect an actual Date() object when passing from javascript to a server hub method via Javascript.
This is rather inefficient, because I already have a model object in javascript, and I should just be able to send it to a SignalR hub as-is.

Does anybody have any idea why this is happening?

EDIT:
This is a message arriving in the browser from the server, note the format of the CreationDate - on the server this is a CLR DateTime

Hub to Browser

This is sending an object back to the Hub - notice the exact same date format... this call fails
Browser to Hub

This is the error
enter image description here

If I format the date like this, it works (Javascript code):

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

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

半世蒼涼 2024-12-19 00:17:56

GITHub 上列出的已识别问题现已开放。

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

Recognised issue listed on GITHub, now open.

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

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文