Несколько клиентов.NET SignalR с разных машин
У меня есть SignalR Hub внутри проекта ASP.NET MVC, развернутого на IIS.
У меня есть приложение WinForms, работающее на том же сервере (App1) с использованием "SignalR .NET Client".
На стороне клиента у меня есть другое приложение WinForms (App2), которое подключается к тому же хабу (с "SignalR .NET Client) через локальную сеть.
Проблемы появляются в приложении App2, когда приложение App1 открыто, поскольку приложение App2 не подключается к концентратору. (Останавливает выполнение этого кода в приложении 2):
//Start connection
await Config.hubConn.Start().ContinueWith(t =>
{
if (t.IsFaulted)
{
Config.logReference.Func_WriteEventInLogFile(DateTime.Now.ToLocalTime(), enum_EventTypes.Error, String.Format("{0}.{1}()", MethodBase.GetCurrentMethod().DeclaringType.FullName, MethodBase.GetCurrentMethod().Name),
"Connecting to hub: Ko", string.Format("Error connecting to hub with url: {0}", Config.sSignalRHost));
return false;
}
else
{
Config.logReference.Func_WriteEventInLogFile(DateTime.Now.ToLocalTime(), enum_EventTypes.Debug, String.Format("{0}.{1}()", MethodBase.GetCurrentMethod().DeclaringType.FullName, MethodBase.GetCurrentMethod().Name),
"Before invoke App Opened", "Before invoke App Opened");
Config.hubProxy.Invoke("AppOpened").Wait();
Config.logReference.Func_WriteEventInLogFile(DateTime.Now.ToLocalTime(), enum_EventTypes.Info, String.Format("{0}.{1}()", MethodBase.GetCurrentMethod().DeclaringType.FullName, MethodBase.GetCurrentMethod().Name),
"Connecting to hub: Ok", string.Format("Connection stablished to hub with url: {0}", Config.sSignalRHost));
return true;
}
});
Если я закрою App1 на сервере, App2 начнет работать и сможет подключиться к концентратору, но мне нужно, чтобы оба приложения работали одновременно и были подключены к концентратору.
Отредактировано: я думаю, что проблема связана с ограничениями IIS Windows 10 Home Edition (включено в "Программы и компоненты"). Я не могу подключить 3 SignalR одновременно.