从客户端到服务器

时间:2016-11-04 12:56:00

标签: c# asp.net-core signalr asp.net-web-api2

我在本地运行的azure和windows服务中运行了一个web api。这些“客户端”在web api中登录Hub。当api向所有客户发出命令时,一切都很受欢迎。这里没问题。 但是,是否可以从同一个websocket从客户端向服务器发送信号,从windows服务到web api?现在我的服务在web api上调用一个控制器,但这感觉多余,因为已经有一个websocket可用,对吗?

我对signalR有点新意,所以任何帮助都会受到赞赏。

日Thnx!

1 个答案:

答案 0 :(得分:3)

您可以使用Invoke方法实现此目的:

var hubConnection = new HubConnection("http://localhost:1235/");
var hub = hubConnection.CreateHubProxy("myHub");

await hubConnection.Start();

hub.Invoke("MethodName", params...);

创建集线器连接后,您可以使用Invoke从客户端调用方法调用,第一个参数是methodname(您要调用的服务器上的方法)作为字符串和params你可以给方法发一些参数 如果被调用的方法具有返回类型,则可以将其指定为泛型<>

var result = hub.Invoke<MyReturnType>("MethodName", params...);
相关问题