如何使用SignalR将内容从服务器端推送到客户端?

时间:2016-11-16 05:43:25

标签: asp.net-web-api signalr

我有.NET解决方案,其中有两个应用程序。 解 APP1 APP2

APP1和APP2在IIS中有不同的APP池。

APP1包含实际网站,其中包含客户端,服务器端代码和signalR。 APP2是一个用ASP.NET WEB API 2.2构建的Web API。

从APP2我发布数据到APP1服务器端代码,用户通过将内容推送到客户端代码,使用SignalR进行数据处理。

理想情况下,WEB API的数据应该立即到达用户,但在我的情况下APP1需要刷新并且需要时间。

下面是APP1中的代码将内容推送到客户端。

' SignalR Update all feeds in the list
Dim HubContext As IHubContext = GlobalHost.ConnectionManager.GetHubContext(Of ActivityFeedHub)()
For Each ID As Integer In Feeds
    Dim result As Object = New With
                                    {
                                        .Success = True _
                                        , .Action = action.ToString() _
                                        , .ActivityFeedProfileID = feedID _
                                        , .UrlToReplace = DBSystem.Current.Subsites.HomeSite.URL
                                    }
    output.Remove("Result")
    output.Add(New JProperty("Result", JObject.FromObject(result)))

    ' Send the update to client
    HubContext.Clients.Group(ID).updateActivity(output.ToString())

我是SignalR的新手,想知道我需要查找哪些内容?

任何帮助或重定向都将受到高度赞赏!

谢谢!

1 个答案:

答案 0 :(得分:0)

您无法使用SignalR将数据从一个应用推送到与其他应用连接的客户端。相反,您应该将数据从一个应用程序发送到服务器上的其他应用程序,然后每个应用程序都会将SignalR的相同数据推送到其连接的客户端。