Я пытаюсь разместить концентратор Signalr в моем консольном приложении .NET Core 3.0. То, что я кодировал, заключается в следующем. Когда я запускаю, я получаю исключение «GetStreamItemType не имеет реализации».
static void Main(string[] args)
{
BuildWebHost(args).Run();
}
public static IWebHost BuildWebHost(string[] args) => WebHost.CreateDefaultBuilder(args).UseStartup<Startup>().Build();
public class Startup
{
public void ConfigureServices(IServiceCollection services)
{
services.AddSignalR();
}
public void Configure(IApplicationBuilder app, Microsoft.Extensions.Hosting.IHostEnvironment env)
{
app.UseSignalR(routes =>
{
routes.MapHub<Connector>("/connector");
});
}
}
Connector - это мой класс-концентратор, производный от Microsoft.AspNetCore.SignalR.Hub. Когда приложение запускается, я получаю следующее исключение и не могу понять, почему.
System.TypeLoadException
HResult=0x80131522
Message=Method 'GetStreamItemType' in type 'Microsoft.AspNetCore.SignalR.Internal.DefaultHubDispatcher`1' from assembly 'Microsoft.AspNetCore.SignalR.Core, Version=1.1.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60' does not have an implementation.
Source=Microsoft.AspNetCore.SignalR.Core
StackTrace:
at Microsoft.Extensions.DependencyInjection.SignalRDependencyInjectionExtensions.AddSignalRCore(IServiceCollection services) in /_/src/Microsoft.AspNetCore.SignalR.Core/SignalRDependencyInjectionExtensions.cs:line 36