来自客户端的 Signalr 响应
Signalr response from client
如何从我订阅的客户端获取结果到我的操作中?
我在我的 mvc 应用程序中设置了集线器和信号器,目的是在多个客户端提供商之间验证客户端。
我在控制器中访问的是:
IHubContext _hubContext = GlobalHost.ConnectionManager.GetHubContext<AmsHub>();
和我的 mvc 操作
public ActionResult Index()
{
var result = _hubContext.Clients.All.FindUsers("johny brown");
// how do I access the result?
return View();
}
我订阅的客户端(我有多个)实现了
var hubConnection = new HubConnection(hubUrl);
IHubProxy myHubProxy = hubConnection.CreateHubProxy("AmsHub");
myHubProxy.On("FindUsers", (name) =>
{
var foundRecords = new User()
{
FirstName = "Johny",
LastName = "Brown",
Email = "johny.brown@dummy.com",
};
});
SignalR(从客户端到服务器)中没有 return 值。您可以定义一个 FindUsersCallback 函数并在您的客户端调用它。在服务器端,您处理这个 "Signal" 并返回您的 View()。
myHubProxy.On("FindUsers", (name) = > {
var foundRecords = new User() {
FirstName = "Johny",
LastName = "Brown",
Email = "johny.brown@dummy.com",
};
hubConnection.asmHub.FindUsersCallback(foundRecords);
});
如何从我订阅的客户端获取结果到我的操作中?
我在我的 mvc 应用程序中设置了集线器和信号器,目的是在多个客户端提供商之间验证客户端。
我在控制器中访问的是:
IHubContext _hubContext = GlobalHost.ConnectionManager.GetHubContext<AmsHub>();
和我的 mvc 操作
public ActionResult Index()
{
var result = _hubContext.Clients.All.FindUsers("johny brown");
// how do I access the result?
return View();
}
我订阅的客户端(我有多个)实现了
var hubConnection = new HubConnection(hubUrl);
IHubProxy myHubProxy = hubConnection.CreateHubProxy("AmsHub");
myHubProxy.On("FindUsers", (name) =>
{
var foundRecords = new User()
{
FirstName = "Johny",
LastName = "Brown",
Email = "johny.brown@dummy.com",
};
});
SignalR(从客户端到服务器)中没有 return 值。您可以定义一个 FindUsersCallback 函数并在您的客户端调用它。在服务器端,您处理这个 "Signal" 并返回您的 View()。
myHubProxy.On("FindUsers", (name) = > {
var foundRecords = new User() {
FirstName = "Johny",
LastName = "Brown",
Email = "johny.brown@dummy.com",
};
hubConnection.asmHub.FindUsersCallback(foundRecords);
});