如何使用 SignalR 从服务器获取内容

How to get something from server using SignalR

我需要创建方法,它可以请求服务器并 return 回答。但是如果我使用 SignalR,我可以 运行 服务器的方法,而服务器将 运行 客户端的方法。但是我怎样才能创建类似这个模板的东西呢?

public Response Request()
{
    //???
}

if I use SignalR, I can run server's method and server will run client's method.

如果您想在 c# 中从 .NET 客户端应用程序调用集线器方法,您可以参考以下代码片段。

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);
}

另外,设置Hub和客户端,请参考以下文章。