3

是否可以将 upshot/knockout 与 signalr 结合起来(我只能找到关于 knockout 和 signalr 的问题)?例如,如果我使用以下命令添加任务:

    self.addTask = function () {
        var task = new Task({
            LastUpdated : new Date().toMSJSON(),
             Title : this.newTaskText(),
             IsDone : true
         });
         self.tasks.unshift(task);
    }

在视图模型中,这将自动将其添加到视图中(基于敲除数据绑定)并调用:

        public void InsertTask(Task task)
        {
            InsertEntity(task);
        }

在服务器中。如果我也想将它广播给其他客户怎么办.. 是否可以使用相同的库?如果是..我应该做哪些改变/我需要做的其他事情?是否有任何替代方案可以使这更容易,但仍然遵循即将推出的 Microsoft ASP.NET MVC 4 堆栈?

4

1 回答 1

1

你应该可以,在服务器上你可以调用

var connection = AspNetHost.DependencyResolver.Resolve<IConnectionManager().GetConnection<MyConnection>();
connection.Broadcast("Called from an mvc controller or server side method");

或者您可以创建一个集线器并在函数中实现它的客户端:

 self.addTask

向客户端发送“addTask”消息。

于 2012-06-12T02:30:22.407 回答