【问题标题】:SignalR change DisconnectTimeout when using custom resolver使用自定义解析器时 SignalR 更改 DisconnectTimeout
【发布时间】:2016-02-05 04:57:25
【问题描述】:

我在运行 SignalR 以利用依赖注入时使用自定义解析器。 但似乎在此之后没有使用我的 DisconnectTimeout 和 KeepAlive 值。我已经阅读了一些配置被忽略然后使用自定义解析器的 cmets。但是设置 GlobalHost.DependencyResolver 应该可以解决问题。但是改了之后断开连接超时好像还是30秒..

代码:

var resolver = new NinjectSignalRDependencyResolver(Program.kernel);
GlobalHost.DependencyResolver = resolver;
GlobalHost.Configuration.DisconnectTimeout = TimeSpan.FromSeconds(9);
GlobalHost.Configuration.KeepAlive = TimeSpan.FromSeconds(3);

app.Map("/signalr", map =>
{
    map.UseCors(CorsOptions.AllowAll);
    var hubConfiguration = new HubConfiguration
    {
        Resolver = resolver,
        EnableJSONP = true,
        EnableDetailedErrors = true
    };
    map.RunSignalR(hubConfiguration);
});

有什么我做错或没有考虑的吗?

【问题讨论】:

    标签: c# .net signalr


    【解决方案1】:

    以下代码对我有用

      var wDependenctResolver = new SignalRUnityResolver(wUnityContainer);
      GlobalHost.DependencyResolver = wDependenctResolver;
      GlobalHost.Configuration.ConnectionTimeout = TimeSpan.FromSeconds(30);
      GlobalHost.Configuration.DisconnectTimeout = TimeSpan.FromSeconds(6);
      GlobalHost.Configuration.KeepAlive = TimeSpan.FromSeconds(2);
      try
      {
        var hubConfiguration = new HubConfiguration
        {
    
          EnableDetailedErrors = true,
          EnableJavaScriptProxies = true
        };
        appBuilder.MapSignalR("/signalr", hubConfiguration);
    
      }
      catch (Exception ex)
      {
        Console.WriteLine("Failed to initialize or map SignalR", ex);
      }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-02-23
      • 1970-01-01
      • 1970-01-01
      • 2014-03-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多