【问题标题】:How can I send Notification new message arrived to user by SignalR HubSignalR Hub 如何向用户发送通知新消息到达
【发布时间】:2013-02-05 02:57:14
【问题描述】:

在我们的 MVC 4 网络中,我希望系统在用户每次收到新消息时向他发送通知。那么当我的数据库发生变化时(例如:向表中添加新行),系统会向用户发送通知吗?

【问题讨论】:

  • 我也在寻找这样的东西。运气好吗?
  • 我看起来也一样....

标签: asp.net-mvc asp.net-mvc-4 signalr


【解决方案1】:

这些是这样做的步骤:

  1. 按照signalR wiki page 上的说明创建一个名为 myhub 的集线器
  2. 对于每个连接,您都有一个连接 ID,您可以使用它与用户 ID 相关联,或者您甚至可以将用户名作为参数传递给您的集线器方法。再次阅读上面的页面。您可以在 hub 上的方法中添加任何参数。
  3. 在服务器和客户端上创建一个方法来通知新消息。
  4. 服务器端方法应采用连接 ID 或用户名参数。
  5. 客户端方法应该简单地填充您的新消息部分或更新新消息的数量。
  6. 当用户收到消息并且您已插入数据库或仅在集线器上收到消息而没有任何持久性时,您可以通过连接 ID 将此消息发送到单个客户端。这次您可能不会发送完整的消息,而只会发送 messagecountupdate 或 newmessage 摘录之类的内容。
  7. 以上内容将在客户和快乐的日子里继续通知新消息

如果您需要现成的解决方案或工作示例,我建议您在 github 上创建一个现有的 singalR 存储库,或者创建一个新的 MVC 4 应用程序并将其放入 github 上的项目中。在你尝试过之后的任何问题都会说服更多的人来这里帮助你。

【讨论】:

    【解决方案2】:

    您可以从应用程序中的任何位置从集线器发送消息。看着 https://github.com/SignalR/SignalR/wiki/Hubs上的“从集线器外部通过集线器广播”

    基本上使用这种方法,您可以向所有客户端发送通知..

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-11-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多