【问题标题】:Need to create notification like Facebook using SignalR需要使用 SignalR 创建像 Facebook 这样的通知
【发布时间】:2015-05-04 18:17:27
【问题描述】:

我是 SignalR 的初学者。我的网站正在使用 ASP.NET MVC5 开发 我正在尝试创建像 Facebook 这样的实时通知,每个人都建议我应该使用 SignalR。

我尝试在这里http://techbrij.com/database-change-notifications-asp-net-signalr-sqldependency 使用带有示例代码的 SignalR,但不幸的是,我的托管管理员说他们无法为我的 sql 用户授予订阅权限,所以我不能像这个提示那样做。

您对我在未经订阅许可的情况下使用 SignalR 有什么建议吗?我只需要:

  • 通知数量统计
  • 通知的内容将是 像 Facebook 一样显示。

【问题讨论】:

    标签: asp.net-mvc signalr


    【解决方案1】:

    当更新发生时,不要让 SQL 通知,而是从域中进行。使用EventAggregator

    点赞https://www.nuget.org/packages/Caliburn.Micro.EventAggregator/

    从您的存储库或其他地方更新数据库

    public void UpdateFoo(Foo foo) 
    {
       ... //Update here
       this.eventAggregator.Publish(new UpdatedEvent<Foo>(foo);
    }
    

    如果您想将这些事件无缝转发给客户端,可以使用我的库

    https://github.com/AndersMalmgren/SignalR.EventAggregatorProxy/wiki

    【讨论】:

    • 我的数据库需要任何权限吗?
    • 它与数据库无关,而不是使用数据库,而是在您更新数据库时在域中的位置触发事件
    • 我还需要存储通知,所以我创建了一个表名 Notification 来存储所有通知,因为某些用户没有立即阅读他们的通知
    猜你喜欢
    • 1970-01-01
    • 2012-03-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-01-16
    • 2012-05-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多