c# - 具有不同配置的多个 SignalR 集线器

标签 c# asp.net signalr signalr-hub

我遇到过需要多个具有不同配置的 SignalR 集线器(至少 2 个)的情况。

目前使用 v1.1.0,我只能执行以下配置所有集线器的操作:

GlobalHost.Configuration.ConnectionTimeout = TimeSpan.FromSeconds(30);

是否可以为多个集线器设置不同的配置?

最佳答案

所有集线器共享相同的连接对象,因此它们都共享相同的配置。

如果你想拥有 1 个服务器但集线器的多个连接配置,你可以执行以下操作:

app.MapHubs(yourPathToConnectionWithConfigurationA, new HubConfiguration
{
    Resolver = MyResolverWithConfigurationA
});

app.MapHubs(yourPathToConnectionWithConfigurationB, new HubConfiguration
{
    Resolver = MyResolverWithConfigurationB
});

因此,当您想要使用配置 A 时,您连接到该服务器端点,而当您想要连接到端点 B 时,您连接到该端点。请记住,集线器不会在两种配置之间共享客户端/连接,即使集线器将在两者上也是如此。

关于c# - 具有不同配置的多个 SignalR 集线器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17623962/

相关文章:

C# 数据读取器值在调试时重复多次

c# - 什么是{get;放; } C# 中的语法?

c# - 无法从文本框获取更新值

javascript - Asp.net 页面在 Internet Explorer 7 和 7+ 版本中加载奇怪的内容

signalr - SignalR:$ .connection未定义

c# - 如何使用 Autofixture 创建和填充模拟类?

c# - 绑定(bind)可空值时未设置值

c# - 在 Sitecore 中识别页面请求的简单方法

azure - SignalR 和 Azure - 消息传递不可靠?

signalr - 基本 SignalR IMessageBus 实现