首页 > 解决方案 > 在 SignalR 的 HubOptions 上找不到 ClientTimeoutInterval

问题描述

我的 dotnet 核心版本是 5.0。我遵循此文档,但仍然找不到“ClientTimeoutInterval”属性。

我的代码的屏幕截图在这里。

请帮我。谢谢。

标签: c#.netsignalr

解决方案


在带有 Microsoft.AspNetCore.SignalR.Client 5.0.9 包的 .NET 5 上使用以下代码:

public void ConfigureServices(IServiceCollection services)
{
    services.AddSignalR(options =>
    {
        options.KeepAliveInterval = TimeSpan.FromMinutes(20);
        options.ClientTimeoutInterval = TimeSpan.FromMinutes(40);
        options.HandshakeTimeout = TimeSpan.FromMinutes(5);
        options.MaximumParallelInvocationsPerClient = 10;
        options.MaximumReceiveMessageSize = 10 * 1024 * 1024;
        options.StreamBufferCapacity = 50;
        options.EnableDetailedErrors = true;
    });

    services.AddCors(options =>
    {
        options.AddPolicy(CorsSignalrPolicyName, builder => builder
                .AllowAnyHeader()
                .AllowAnyMethod()
                .SetIsOriginAllowed((host) => true)
                .AllowCredentials()
        );
    });
    services.AddControllers();
}

完整的示例项目可以在https://github.com/hgmauri/signalr-socket-dotnet5找到


推荐阅读