Чи є невеликий приклад консолі або програми winform, яка використовує signalR для надсилання повідомлення в .net хаб ?. Я спробував приклади .net і подивився вікі, але для мене це не має сенсу взаємозв'язок між концентратором (.net) та клієнтом (консольний додаток) (не можу знайти приклад цього). Чи потрібна програмі просто адреса та назва концентратора для підключення ?.
Якщо хтось може надати невеликий шматочок коду, що показує програму, яка підключається до концентратора і відправляє "Hello World" або щось, що отримує .net хаб ?.
PS. У мене є стандартний приклад чату-концентратора, який працює добре, якщо я спробую йому призначити ім'я концентратора в Cs, він перестане працювати, тобто [HubName ("тест")], чи знаєте ви причину цього ?.
Дякую.
Поточний код програми консолі.
static void Main(string[] args)
{
//Set connection
var connection = new HubConnection("http://localhost:41627/");
//Make proxy to hub based on hub name on server
var myHub = connection.CreateProxy("chat");
//Start connection
connection.Start().ContinueWith(task =>
{
if (task.IsFaulted)
{
Console.WriteLine("There was an error opening the connection:{0}", task.Exception.GetBaseException());
}
else
{
Console.WriteLine("Connected");
}
}).Wait();
//connection.StateChanged += connection_StateChanged;
myHub.Invoke("Send", "HELLO World ").ContinueWith(task => {
if(task.IsFaulted)
{
Console.WriteLine("There was an error calling send: {0}",task.Exception.GetBaseException());
}
else
{
Console.WriteLine("Send Complete.");
}
});
}
Сервер-концентратор. (інша робоча область проекту)
public class Chat : Hub
{
public void Send(string message)
{
// Call the addMessage method on all clients
Clients.addMessage(message);
}
}
Інформаційна Wiki для цього є http://www.asp.net/signalr/overview/signalr-20/hubs-api/hubs-api-guide-net-client