5
votes

I add SignalR to ASP .Net Core 2 app

packages

  • "Microsoft.AspNetCore.All" Version="2.0.0"
  • "Microsoft.AspNetCore.SignalR" Version="1.0.0-alpha2-27025"
  • "Microsoft.AspNetCore.SignalR.Client" Version="1.0.0-alpha2-27025"
  • "Microsoft.AspNetCore.SignalR.Client.Core" Version="1.0.0-alpha2-27025"
  • "Microsoft.AspNetCore.SignalR.Common" Version="1.0.0-alpha2-27025"
  • "Microsoft.AspNetCore.SignalR.Core" Version="1.0.0-alpha2-27025"
public IServiceProvider ConfigureServices(IServiceCollection services)
{
    services.AddSignalRCore();
    services.AddSignalR();
}

and

public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory, IServiceProvider serviceProvider)
    app.UseSignalR(routes =>
    {
        routes.MapHub<ManageHub>("manageHub");
    });
}

url:port/signalr, url:port/signalr/negotiate... return 404

url:port/manageHub return 400 with "Connection ID required"

I not found .MapSignalR()

How use SignalR in ASP .Net Core?

2
have you tried testing it using a client side code? I guess the signalr client libraries would take care of the clientID etcNeville Nazerane
Man you are keen tackling an alpha. I'm hanging out for the team to get the core version running too. I'll be interested to see if anyone is keen to post anything this early.OrdinaryOrange
OrdinaryOrange yes I too was scared of the alpha and created an .net framework website just for signalr. But at least the set up should still work, or they wouldn't have released itNeville Nazerane

2 Answers

8
votes

You seem to be using the old client. SignalR for ASP.NET Core does not use the /negotiate endpoint anymore. The new SignalR server is not compatible with old client and the new clients are not compatible with the old SignalR server. Take a look at the announcement and samples

3
votes

First of all, make sure you installed the last official version of SignalR for ASP.NET Core 2.0

Second follow that link How to get SignalR Working in ASP.NET Core 2