【发布时间】:2018-06-29 11:37:36
【问题描述】:
我有 2 个 ASP.NET Core Razor Web 应用程序。每个应用程序都将使用 SignalR 与 Web 应用程序客户端和移动客户端进行通信。由于我的预期用途,我将 Web 应用程序设置为 Hub 和 Client,其中客户端使用 .NET SignalR 客户端。 2 个网络应用程序中的每一个都具有以下特性:
static internal HubConnection Connection; // In the Startup class
public Startup(IConfiguration configuration)
{
Configuration = configuration;
Connection = new HubConnectionBuilder()
// Where the URL is for the OTHER web app
.WithUrl("https://localhost:44386/NotificationHub")
.Build();
}
每个项目在 Hubs 文件夹中还有一个 NotificationHub 类,它派生自 Hub。
在每个应用程序的 Startup ConfigureServices 方法中,我将其作为最后一条语句:
services.AddSignalR();
在每个应用程序的启动配置方法中,我在调用 UseMvc 之前有以下内容:
app.UseSignalR(routes =>
{
routes.MapHub<NotificationHub>("/NotificationHub");
});
在我拥有的每个 NotificationHub 类中:
public async Task SendMessage(string user, string message)
{
await Clients.All.SendAsync("ReceiveMessage", user, message);
}
因此,我不确定如何最初从一个客户端连接到集线器,我也不确定我是否正确使用了 URL。
【问题讨论】:
-
您想使用 .net 客户端还是使用 js 连接?发布答案
标签: c# asp.net-core signalr asp.net-core-signalr