首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从一个SignalR核心控制台应用程序连接到Azure .NET服务?

从一个SignalR核心控制台应用程序连接到Azure .NET服务?
EN

Stack Overflow用户
提问于 2018-07-01 20:04:54
回答 2查看 1.9K关注 0票数 1

首先,我要说我是SignalR的新手。我知道基本的概念,但到目前为止还没有用SignalR编写过应用程序。

只要稍加努力,我就可以让基本的Azure SignalR ChatRoom示例在本地连接到Azure SignalR实例(只使用命令行中的'dotnet‘运行;如果从Visual中启动,只要我试图更改JS提示窗口中的名称,它就会停止)。

我现在想做的是从.NET核心控制台应用程序发送消息(不需要接收),并将它们显示在浏览器连接到的聊天室实例中。这是为了模拟一个后台过程,做一些工作,然后向Azure SignalR集线器发送一条消息,通知所有客户端结果。

我创建了一个新的.NET核心应用程序,当我尝试添加Microsoft.Azure.SignalR包时,我收到一条错误消息,声明“错误: package 'Microsoft.Azure.SignalR‘与项目Microsoft.Azure.SignalR中的'all’框架不兼容

有什么例子可以帮到我吗?像使用ChatRoom快速启动示例那样简单吗?

EN

回答 2

Stack Overflow用户

发布于 2018-07-02 08:21:52

如果您使用的.NET核心版本低于2.1,请将其更新为2.1,因为SignalR是在.NET Core2.1上发布的。

有关SignalR on .NET核心的更多信息,我们可以参考:开始在SignalR内核上使用ASP.NET

我们可以下载.NET Core2.1SDK,网址:.NET核心的所有下载

类似的线程供您参考:

SignalR不能与.Net核心一起使用

票数 0
EN

Stack Overflow用户

发布于 2018-07-02 08:28:38

在服务器上,您需要使用依赖项注入获得集线器上下文,并调用SendAsync方法将其发送到客户端。例如:

代码语言:javascript
复制
public class Sender
{
    public Sender(IHubContext<MyHub> context)
    {
        context.Clients.All.SendAsync(...);
    }
}

这里可以找到一个示例:https://github.com/aspnet/AzureSignalR-samples/tree/master/samples/FlightMap,它使用计时器向客户端广播数据。

对于遇到的“不兼容框架”错误,需要在将Microsoft.Azure.SignalR添加到项目时指定版本号,因为此包仍然是预发布版本:

代码语言:javascript
复制
dotnet add package Microsoft.Azure.SignalR --version 1.0.0-preview1-10011
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51126635

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档