为 .NET 6 服务器项目安装哪个 SignalR 包?

Iva*_*ono 19 asp.net visual-studio signalr asp.net-core .net-6.0

我有一个 NET6 项目,它是更大的 .NET 6 ASP.NET 解决方案的一部分。该项目仍然引用:

  1. Microsoft.AspNetCore.SignalR,和
  2. Microsoft.AspNetCore.SignalR.Core

现在已被标记为已弃用。

我需要安装哪些软件包来替换它们?

问题在于,当前 SignalR 位于与主 ASP.NET 项目分开的程序集中。这是因为解决方案中的主项目和其他几个项目使用集线器(使用构造函数 DI)。

如果我将 SignalR 项目更改为

<Project Sdk="Microsoft.NET.Sdk.Web">
    ...
</Project>
Run Code Online (Sandbox Code Playgroud)

我收到以下编译错误:

错误 CS5001 程序不包含适合入口点的静态“Main”方法

所以问题是我无法与多个其他项目引用的 SignalR 建立一个通用程序集。

Gur*_*ron 22

SignalR包含在Microsoft.AspNetCore.App共享框架(文档)中。将控制台应用程序 SDK 更改为Microsoft.NET.Sdk.Web

<Project Sdk="Microsoft.NET.Sdk.Web">
   ...
</Project>
Run Code Online (Sandbox Code Playgroud)

要在类库项目中使用 ASP.NET Core 共享框架- 添加FrameworkReference以下元素Microsoft.AspNetCore.App

<ItemGroup>
    <FrameworkReference Include="Microsoft.AspNetCore.App" />
</ItemGroup>
Run Code Online (Sandbox Code Playgroud)