Это полный ответ от SignalR wiki (https://github.com/SignalR/SignalR/wiki/Faq). Это сработало со мной:
Во-первых, убедитесь, что у вас есть вызов MapHubs () в Global.asax.
Убедитесь, что маршрутный концентратор зарегистрирован перед любыми другими маршрутами в вашем приложении.
RouteTable.Routes.MapHubs();
В ASP.NET MVC 4 вы можете делать следующее:
<script type="text/javascript" src="~/signalr/hubs"></script>
Есливы пишете приложение MVC 3, убедитесь, что вы используете Url.Content для ссылок на сценарии:
<script type="text/javascript" src="@Url.Content("~/signalr/hubs")"></script>
Если вы пишете обычное приложение ASP.NET, используйте ResolveClientUrl для ссылок на сценарии:
<script type="text/javascript" src='<%= ResolveClientUrl("~/signalr/hubs") %>'></script>
Если вышеупомянутое все еще не работает, убедитесь, что в вашем файле web.config установлен RAMMFAR:
<configuration>
<system.webServer>
<modules runAllManagedModulesForAllRequests="true">
</modules>
</system.webServer>
</configuration>