在 .NET 4.6.1 上使用 SignalR Core

Kir*_*512 6 c# .net-4.6.1 asp.net-core-signalr

正如SignalR 差异文档中所说,我们可以在 .NET 4.6.1 及更高版本上使用 SignalR Core...

SignalR 差异

所以我知道两种情况下启动和配置的代码:

SignalR 核心:

配置服务

//Add SignalR service
services.AddSignalR();
Run Code Online (Sandbox Code Playgroud)

启动

app.UseSignalR(routes =>
{
    routes.MapHub<NotificationsHub>("/notification");
});
Run Code Online (Sandbox Code Playgroud)

信号R:

启动

app.Map("/signalr", map =>
{
    map.UseCors(CorsOptions.AllowAll);
    var hubConfiguration = new HubConfiguration { };
    hubConfiguration.EnableDetailedErrors = true;
    map.RunSignalR(hubConfiguration);
});
Run Code Online (Sandbox Code Playgroud)

我的问题是,我需要在 .NET 4.6.1 启动中做什么来映射我的 SignalR 集线器等等......?我找不到有关此特定案例的任何文档。

更新 1: 我尝试运行相同的代码,显然更改了客户端代码以使用 SignalR 核心方法,我现在得到的是(未授权)在协商请求期间。

Kir*_*512 8

经过一些研究并在ASP.NET 论坛上问了同样的问题后,我得出的结果是,不可能在任何 .NET Framework 项目上使用 SignalR Core。我们只能在 .NET Core 项目上使用它,它支持将框架定位到 .NET Framework 4.6.1 或更高版本,然后在支持的平台上编译和运行应用程序。

更多细节在这里:https : //forums.asp.net/t/2160460.aspx