SignalR: Odebrané metody UseSignalR a Use Připojení ions
V ASP.NET Core 3.0 přijal SignalR směrování koncových bodů. V rámci této změny UseSignalRbyly označeny jako zastaralé metody , UseConnectionsa některé související metody. V ASP.NET Core 5.0 byly tyto zastaralé metody odebrány. Úplný seznam metod najdete v tématu Ovlivněná rozhraní API.
Diskuzi o tomto problému najdete v tématu dotnet/aspnetcore#20082.
Zavedená verze
5.0 Preview 3
Staré chování
Rozbočovače SignalR a obslužné rutiny připojení je možné zaregistrovat v kanálu middlewaru UseSignalR
pomocí metod nebo UseConnections
metod.
Nové chování
Rozbočovače SignalR a obslužné rutiny připojení by se měly zaregistrovat v rámci UseEndpoints metod MapHub rozšíření a MapConnectionHandler metod IEndpointRouteBuilder.
Důvod změny
Staré metody měly vlastní logiku směrování, která nepracuje s jinými komponentami směrování v ASP.NET Core. V ASP.NET Core 3.0 byl zaveden nový systém směrování pro obecné účely označovaný jako směrování koncových bodů. Směrování koncového bodu povolilo SignalR pro interakci s jinými komponentami směrování. Přechod na tento model umožňuje uživatelům realizovat úplné výhody směrování koncových bodů. V důsledku toho byly staré metody odebrány.
Doporučená akce
Odeberte kód, který volá UseSignalR
nebo UseConnections
z metody projektu Startup.Configure
. Nahraďte ho voláním nebo MapHub
MapConnectionHandler
( v uvedeném pořadí) v textu volání UseEndpoints
. Příklad:
Starý kód:
app.UseSignalR(routes =>
{
routes.MapHub<SomeHub>("/path");
});
Nový kód:
app.UseEndpoints(endpoints =>
{
endpoints.MapHub<SomeHub>("/path");
});
Obecně platí, že předchozí MapHub
hovory a MapConnectionHandler
hovory se dají přenést přímo z těla UseSignalR
a UseConnections
do UseEndpoints
beze změny.