Как получить что-то с сервера с помощью SignalR - PullRequest
0 голосов
/ 01 июня 2019

Мне нужно создать метод, который может запрашивать сервер и возвращать ответ.Но если я использую SignalR, я могу запустить метод сервера, а сервер запустит метод клиента.Но как я могу создать что-то вроде этого шаблона?

</p> <pre><code>public Response Request() { //??? }

1 Ответ

0 голосов
/ 12 июня 2019

если я использую SignalR, я могу запустить метод сервера, а сервер запустит метод клиента.

Если вы хотите вызвать метод-концентратор из клиентского приложения .NET в c #, высм. следующий фрагмент кода.

try
{
    HubConnection connection = new HubConnectionBuilder()
    .WithUrl("http://localhost:61262/chatHub")
    .Build();

    await connection.StartAsync();

    var mes = "hello";

    await connection.InvokeAsync("SendMessage", "Consloe Client", mes);

    // await connection.StopAsync();
}
catch (Exception ex)
{

    Console.WriteLine("Can not communicate with server now, please retry later.");
}

Метод хаба

public async Task SendMessage(string user, string message)
{          
    await Clients.All.SendAsync("ReceiveMessage", user, message);
}

Кроме того, для настройки хаба и клиента см. следующие статьи.

...