Asp.net-Web-Api
在 WebApi 和 MVC 項目之間共享 SignalR 集線器
是否有推薦的方法在兩個應用程序之間共享 SignalR 集線器?
實際情況是一個面向公眾的 WebAPI 項目和一個內部的 MVC WebApp。我想做的是從 WebAPI 項目呼叫 SignalR 集線器上的方法,並將這些方法的結果推送到通過 MVC 應用程序連接的客戶端。
最好的選擇是創建第三個“Hub”項目並將兩個項目都連接到該項目嗎?如果是這樣,如何管理中心實例?兩個應用程序能否從不同的應用程序池(可能還有主機)中獲取對同一個集線器的引用?
我讀了一些關於
GlobalHost.ConnectionManager.GetHubContext,這足以獲得兩個應用程序都可以使用的有效單例集線器嗎?任何想法都非常感謝。
只需通過 SQL Server 表設置信號器消息路由。它將使用相同的路由設置自動連接所有集線器。沒有別的事可做,這很神奇。
GlobalHost.DependencyResolver.UseSqlServer(ConfigurationManager.ConnectionStrings["signalr"].ConnectionString);您將需要以下 nuget 包:Microsoft.AspNet.SignalR.SqlServer