我已经设置了一个应用程序和部署使用Azure。如果我部署并连接到Azure SignalR,那么它是好的,我可以管理与Azure消息限制等。然而,当我尝试使用项目中的 "默认 "SignalR而不是Azure服务时,发布配置仍然试图连接到Azure的。
在我的startup.cs中,我特别尝试不使用Azure的SignalR。
services.AddSignalR();
我已经注释了指向Azure的这一行。
services.AddSignalR().AddAzureSignalR("Endpoint=https://<myApp>.service.signalr.net;AccessKey=<MyKey>;Version=1.0;");
现在,当我发布作为一个Release配置,Azure在线试图连接到这个主机。
service.signalr.net
而如果我以Debug配置的形式发布,Azure online则连接到我想要的主机。
.azurewebsites.net
这是我现在想要的。
我试图找出是哪个varialbe "强迫 "Azure在发布模式下使用他自己的Service.SignalR.net。它可能是一些变量,我可以看到下面的Azure应用程序? 或者是一个设置,我需要把在Visual Studio代码?
Thx.
我相信,你可以做的是像定义启动时使用一个或另一个环境的东西,但我不能说什么将是行为,当你将设置你的变量在azure。
你应该尝试一下这样的事情。
public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
if (env.IsDevelopment())
{
app.UseSignalR(routes =>
{
routes.MapHub<YourHub>("/YourHub");
});
}
else
{
app.UseAzureSignalR(routes =>
{
routes.MapHub<YourHub>("/YourHub");
});
}
}