1

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

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

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

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

4

1 回答 1

5

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

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

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

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

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

于 2013-07-13T00:44:09.000 回答