Share via


SignalR: métodos UseSignalR e UseConnections removidos

No ASP.NET Core 3.0, o SignalR adotou o roteamento de ponto de extremidade. Como parte dessa alteração, os métodos UseSignalRe UseConnections e alguns outros relacionados foram marcados como obsoletos. No ASP.NET Core 5.0, esses métodos obsoletos foram removidos. Para obter a lista completa de métodos, confira APIs afetadas.

Para ver a discussão sobre esse problema, confira dotnet/aspnetcore#20082.

Versão introduzida

5.0 versão prévia 3

Comportamento antigo

Os hubs e manipuladores de conexão do SignalR podem ser registrados no pipeline do middleware usando os métodos UseSignalR ou UseConnections.

Novo comportamento

Os hubs e os manipuladores de conexão do SignalR devem ser registrados em UseEndpoints usando os métodos de extensão MapHub e MapConnectionHandler em IEndpointRouteBuilder.

Motivo da alteração

Os métodos antigos tinham uma lógica de roteamento personalizada que não interagia com outros componentes de roteamento no ASP.NET Core. No ASP.NET Core 3.0, um novo sistema de roteamento de uso geral, chamado roteamento de ponto de extremidade, foi introduzido. O roteamento de ponto de extremidade permite que o SignalR interaja com outros componentes de roteamento. A mudança para esse modelo permite que os usuários usufruam dos benefícios completos do roteamento de ponto de extremidade. Consequentemente, os métodos antigos foram removidos.

Remova o código que chama UseSignalR ou UseConnections do método Startup.Configure do projeto. Substitua-o por chamadas a MapHub ou MapConnectionHandler, respectivamente, no corpo de uma chamada a UseEndpoints. Por exemplo:

Código antigo:

app.UseSignalR(routes =>
{
    routes.MapHub<SomeHub>("/path");
});

Novo código:

app.UseEndpoints(endpoints =>
{
    endpoints.MapHub<SomeHub>("/path");
});

Em geral, as chamadas a MapHub e MapConnectionHandler anteriores podem ser transferidas diretamente do corpo de UseSignalR e UseConnections para UseEndpoints com pouca ou nenhuma alteração necessária.

APIs afetadas