Просмотрите некоторые примеры кода для консольных приложений в их GitHub .
SignalR будет транслировать только при наличии соединений, которые будут транслироваться.Это часть этого, так что вам не нужно управлять этим аспектом.Вы, конечно, можете запрашивать данные или получать их по своему усмотрению, но когда вы скажете, что их нужно отправить, SignalR проверит, есть ли кто-нибудь, кому их нужно отправить.
Насколько C # to C # против C #web / js, да, вы думаете об этом неправильно.Если это консольное приложение или web / js, то это клиент.Связь клиент-сервер и сервер (концентратор) к клиенту.Не имеет значения, является ли это консольным приложением, или web / js, или любым другим типом клиента.
Вот пример консольного приложения, которое я использую для демонстрационных целей, которое позволяет мне общаться между консолью ивеб-страница или веб-страница для консоли через концентратор:
private static void Main(string[] args)
{
try
{
var connection = new HubConnection("http://localhost:7132/");
IHubProxy hub = connection.CreateHubProxy("ChatHub");
hub.On<string, string>("broadcastMessage", (name, message) => { Console.Write(name + ": "); Console.WriteLine(message); });
connection.Start().Wait();
hub.Invoke("Notify", "Console app", connection.ConnectionId);
string msg = null;
while ((msg = Console.ReadLine()) != null)
{
hub.Invoke("Send", "Console app", msg).Wait();
}
}
catch (Exception e)
{
Console.WriteLine("Error" + e.Message);
}
}