javascript - SignalR 与 Breeze 相结合

标签 javascript signalr breeze

我现在有一个项目是用 BreezeJS 建立的。 不知道 BreezeJS 内部发生了什么,但只是接受它的工作原理,我基本上通过这个简单的命令将我的项目显示在屏幕上。

export function getProjects(projectsObservable, errorObservable)
{
return breeze.EntityQuery.from("Projects")
       .using(manager).execute()...then/fail.
}

我现在想让它响应使用 signalR 编辑相同项目的用户。 这意味着我此时在 javascript 端触发回调,说 guid = xxxxxxx 的对象已更改(guid 是关键)。

我如何利用 Breeze 更新项目,而无需再次查询服务器,也不会将其视为需要发送回服务器的更新。请记住,我刚刚从 signal r 那里得到了更新。

如果我一开始就可以从 signalR 集线器返回数据,我是否应该首先采取另一条路径,是否有理由创建 WebApi?使用 Breeze 而不是 WebApi 来设置它会容易吗?

最佳答案

IdeaBlade 期待就使用 SignalR 的 Breeze 应用程序提供良好的指导。

我目前的想法是,SignalR 适合通知客户感兴趣的数据发生变化,但我不会将更改后的数据传递给客户信号R。我让客户端决定是否(或不......或何时)从服务器获取更改后的数据。

我的推理基于这样一种观点,即 SignalR 应该是一种快速、轻量级的通知机制,而不是向订阅客户喷洒大量数据的消防水带,这些客户可能准备好也可能没有准备好(或愿意)应对巨大的强加给他们的变更数据量。

也许您可以详细说明为什么您有不同的想法。我当然愿意接受另一种观点。

关于javascript - SignalR 与 Breeze 相结合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16035397/

相关文章:

javascript - 隐藏的div在刷新时仍然可见

asp.net - .net 本地主机网站始终进行 get arterSignalR/poll?transport=longPolling&connectionToken= 调用

knockout.js - Breeze 不会生成 ko observables

Breeze 是偏的

javascript - 显示动态滚动条jquery

Javascript - 从选中的复选框中检索输入值并对其进行处理

signalr - 包 'Microsoft.AspNet.SignalR.Core 2.2.2' 已使用 '.NETFramework,Version=v4.6.1' 恢复

c# - 部署在远程机器上时 SignalR 不工作

javascript - 在 Breeze 实体中分配新值

javascript - jQuery 多次点击事件 Ajax