【问题标题】:SignalR Static CollectionSignalR 静态集合
【发布时间】:2015-01-22 16:32:56
【问题描述】:

我阅读了一些关于在 SignalR 应用程序中使用内存存储的文档。

http://www.asp.net/signalr/overview/guide-to-the-api/mapping-users-to-connections#inmemory

我相信您可以使用静态集合来保存您需要在中心内处理的对象。是否可以从集线器外部访问此静态集合?如果您在应用程序中有其他对象需要在内存存储中访问此对象,那么最佳做法是什么?

【问题讨论】:

    标签: asp.net signalr signalr-hub


    【解决方案1】:

    最佳实践是让 Hub 仅充当 Hub,没有任何类型的业务逻辑。也不要从您的核心逻辑类中调用集线器客户端方法,这是高度耦合的并且是不好的做法。使用您自己的代码或使用库来抽象 Hub,我创建了这个基于事件聚合模式的抽象库。

    http://andersmalmgren.com/2014/05/27/client-server-event-aggregation-with-signalr/

    【讨论】:

      【解决方案2】:

      只需公开静态集合并像访问任何其他静态集合一样访问它。当应用关闭时,集合将丢失,因此需要将其存储在某个地方。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-05-13
        • 2018-04-20
        • 2014-07-07
        • 1970-01-01
        • 2021-03-23
        • 1970-01-01
        • 1970-01-01
        • 2018-06-13
        相关资源
        最近更新 更多