Я работаю над официальным примером SignalR For Winforms. Образом они обрабатывают взаимодействие пользовательского интерфейса с использованием Program
экземпляра/ссылки, как вы можете видеть в коде ниже:Дайте ссылку на другой проект/winform в концентраторе SignalR
public class MyHub : Hub
{
public void Send(string name, string message)
{
Clients.All.addMessage(name, message);
}
public override Task OnConnected()
{
//here they used Program....
Program.MainForm.WriteToConsole("Client connected: " + Context.ConnectionId);
return base.OnConnected();
}
public override Task OnDisconnected(bool graceFull)
{
Program.MainForm.WriteToConsole("Client disconnected: " + Context.ConnectionId);
return base.OnDisconnected(graceFull);
}
}
Мой вопрос, я создал пустое решение в Visual Studio, и я добавил 2 проекта, один является проект WinForms, другой - библиотека классов.
Очевидно, что я не могу дать Program
ссылки из проекта WinForms в MyHub
классе, который находится в проекте библиотеки классов, так как, насколько я знаю Hub
или MyHub
класс не должен быть создан ... его только там ради отражения.
Есть ли способ, которым я могу передать ссылку на мои winforms классу MyHub
либо статически, либо что-то еще?