none
Using Signal R with dotnet core and IIS RRS feed

  • Question

  • Hi everyone,

    I've been learning the signal r library for dotnet core, I've set up a basic app for testing it before we use it in one of our applications, and I used following tutorial:

    docs.microsoft.com/en-us/aspnet/core/tutorials/signalr?view=aspnetcore-2.1&tabs=visual-studio

    I have the following Startup.cs file:

    namespace SignalRChat
    {
        public class Startup
        {
            public Startup(IConfiguration configuration)
            {
                Configuration = configuration;
            }

            public IConfiguration Configuration { get; }

            // This method gets called by the runtime. Use this method to add services to the container.
            public void ConfigureServices(IServiceCollection services)
            {
                services.Configure<CookiePolicyOptions>(options =>
                {
                    // This lambda determines whether user consent for non-essential cookies is needed for a given request.
                    options.CheckConsentNeeded = context => true;
                    options.MinimumSameSitePolicy = SameSiteMode.None;
                });


                services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_1);
                services.AddSignalR();
            }

            // This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
            public void Configure(IApplicationBuilder app, IHostingEnvironment env)
            {
                if (env.IsDevelopment())
                {
                    app.UseDeveloperExceptionPage();
                }
                else
                {
                    app.UseExceptionHandler("/Error");
                }

                app.UseStaticFiles();
                app.UseCookiePolicy();

                app.UseSignalR(routes =>
                {
                    routes.MapHub<ChatHub>("/chatHub");
                });

                app.UseMvc();
            }
        }
    }

    And my ChatHub.cs file is as shown below:

    namespace SignalRChat.Hubs
    {
        public class ChatHub : Hub
        {
            public async Task SendMessage(string user, string message)
            {
                await Clients.All.SendAsync("ReceiveMessage", user, message);
            }
        }
    }

    Now this runs fine in visual studio, but when I publish this to IIS we get a 503 error.

    Does anyone know if there are any settings that you need to add to get it to work in IIS?

    Thanks in advance.

    • Moved by CoolDadTx Thursday, September 13, 2018 2:07 PM ASP.NET related
    Thursday, September 13, 2018 10:13 AM

All replies