问题标签 [signalr-2]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1501 浏览

c# - SignalR 不反序列化自定义对象

我正在使用 SignalR 2.2.2(最新版本)和 .NET 4.5.2

我有这个错误:

无法创建 DF.ApplicationBlocks.IPropertyValueData 类型的实例。类型是接口或抽象类,不能实例化。路径“Properties[0].Id”,第 1 行,位置 881。

问题是 :

我有一个发送自定义对象的 SignalR 客户端(用 .NET 编写,使用 Signal.Client 包),在此对象上有一个对象数组,类型为接口(IPropertyValueData)。数组中的值是此接口的实现。

在 signalR 客户端中,我已配置为使用 TypeNameHandling.Auto :

它正确地做到了,因为这是客户端发送的内容的摘录:

所以定义了 $type 属性并且值是正确的。但是无论如何,服务器在收到消息时仍然会触发错误。

我还将服务器配置为使用 TypeNameHandling.Auto,这是集线器的配置方式(我使用 Castle Windsor 作为 IoC):

我检查了当收到第一条消息时,工厂方法被调用并且设置仍然具有正确的 TypeNameHandling.Auto。

我还测试了以这种方式注册序列化程序:

但是没办法,服务器在收到消息时总是会触发同样的错误。

更复杂的是,应用程序同时运行 signalr 和 webapi 组件(在不同的 url 中)。我已经检查过 webapi 没有注册任何 JsonSerializer,并且使用的 Windsor 容器对于两个组件都是相同的。

任何想法 ?

编辑#1:

我刚刚在这张票上跑了https://github.com/SignalR/SignalR/issues/3304
似乎令人难以置信的是,即使有人做了 PR(https:// github.com/SignalR/SignalR/pull/3343
所以现在我正在尝试找到一种解决方法......

0 投票
0 回答
103 浏览

c# - SignalR SQL Server Scaleout 用户分配

我已经使用 SQL Server 实现了 signalR Scaleout,如下所示:https ://docs.microsoft.com/en-us/aspnet/signalr/overview/performance/scaleout-with-sql-server

所以,我有服务器 1 和服务器 2。

由于无法找到明确的答案,我想知道的是,当服务器 1 出现故障时,连接到服务器 1 的用户会发生什么情况。

这些用户是通过 signalR 自动连接到服务器 2 还是完全断开连接?

0 投票
1 回答
894 浏览

asp.net-core - AspNetCore 2.0 + signalR 1.0.0 alpha2 添加管道或中间件

在旧版本的 SignalR 和 .NetFreamwork 中,我使用了继承类 HubPipelineModule 的类,例如:

现在我想开始在 .NetCore 2.0 和 SignalR 1.0.0 alpha 2 中开发,但我不知道如何在 Web API 控制器中实现管道、中间件或类似 costum ActionAttribute 的东西,我不在乎如何,基本上我需要 OnBeforeIncoming功能。

我搜索并发现只有这篇文章,但它很旧,而不是新版本。

0 投票
1 回答
63 浏览

c# - 自托管 SignalR2 多层依赖注入

我刚刚为我的自托管 SignalR2 项目使用 Ninject 实现了 DI。

还有我的启动课:

在我的信号器集线器构造函数中,我需要一个 IRealTimeDataEngine。

在我的主机中,它是一个控制台应用程序,我需要注入相同的 IRealTimeDataEngine。

在我的 Main 方法中,我需要创建一个 DummyProvider 对象。

如果我没记错的话,创建一个新内核不会在两个不同的项目中给我相同的对象,那么我应该如何在我的组合根目录中请求相同的 IRealTimeDataEngine 呢?

0 投票
1 回答
729 浏览

signalr - 在 SignalR 核心中使用组

我创建 Hub 类,当新用户连接调用函数 OnConnected 时:

但是当连接第二个用户时,或者有时,当我刷新页面 SignalR 在前端生成错误:没有与该 ID 的连接。

使用传输协议:signalR.TransportType.LongPolling

0 投票
1 回答
470 浏览

asp.net-mvc-5 - SignalR2 在使用 SqlDependency 的 MVC5 中不起作用

我在发布这个问题时犹豫不决,因为网上有很多相同的答案但是我的运气不好,没有什么能帮助我。对于我的 Web 应用程序,我需要通知部分,为此我认为使用 SignalR 2。

但它不起作用。以下是完整的代码部分:

==>Hub Class

==>全局文件

==>存储库

==> Owin 创业班

namespace SignalR2_App1 { public partial class Startup { public void Configuration(IAppBuilder app) { app.MapSignalR(); } } }

==> 查看

==>行动

您可以从以下链接下载整个代码:
代码链接

0 投票
1 回答
245 浏览

signalr - SignalR 一般问题

事实上,我有几个关于该库的问题,希望任何人都能回答避免创建单独的主题。如果那不是问的地方,请告诉我在哪里。不过,我认为您的回答也可以让其他人获得知识,因为在互联网上看到了很多关于该员工的困惑。

问:

  1. 我看到当前的 SignalR 版本是 2.2.3,但是我找不到任何版本说明 - 仅适用于 2.2.2,有人知道为什么吗?
  2. 从 2.2.1 更新到 2.2.3 是否有任何风险?我在当前版本中有这么大的应用程序将全部按原样工作,还是有什么需要更改才能迁移到最新版本?

  3. SignalR、SignalR2 和 SignalR ASP.NET 有什么不同吗?我有点困惑

  4. SignalR 是否也允许在商业用途中开发,还是我需要任何特定的许可?

  5. 我发现了很多基于 signalR 的示例,但是您能否提供最新示例,显示当前版本的所有最新功能。

  6. 最后一个问题:与 2.2.1 和 2.2.3 相比,特别是与异步使用相关的版本是否有任何重大变化,或者它更像是几乎相同的创建服务器/客户端应用程序?

  7. 在这个页面上我看到了很好的教程如何使用信号器,但是这个页面官方总是更新到当前的信号器版本吗?https://www.asp.net/signalr。Aksing 因为还看到了 github 页面。如果不能,请您指导我更正一个。

  8. 此示例是否是关于新功能的最新示例?

  9. 如果回想一下,有可用的 JabR 聊天软件,是否还有指向该样本的有效链接?

  10. 就我能够创建一些聊天而言,我想知道 JabR 如何以每个加入聊天的客户都可以看到在他未连接时完成的对话的方式存储聊天对话历史记录。换句话说,如何让每个新加入者聊天以查看其他用户已经在聊天中的所有对话,这在 signalR 引擎本身中是否可能?

非常感谢回答的人。

0 投票
2 回答
746 浏览

signalr - 使用 Aspnetcore.signalr libray 从集线器外部获取 HubContext(不是来自控制器)

我正在使用 AspNetCore.SignalR 开发 SignalR 服务。

以下是我的集线器:

以下是我创建的另一个 Context 类,用于在客户端调用 Hub 的方法:

我想将 NotificationContext 类的引用注入到我自己的 IoC 容器中,这样我就可以解决它并在其上调用 BroadCast 方法,它应该处理向客户端发送消息。

我正在使用服务总线来侦听来自系统另一部分的消息,一旦我收到来自队列的消息,我想使用来自 QueueHandler 的 HubContext 通知连接的客户端。

装配信息

0 投票
1 回答
712 浏览

c# - 在 Xamarin.Forms 中使用 SignalR 发送/接收通知

我可以在 Xamarin.Forms 中使用 SignalR 发送/接收通知吗?例如,我可以向服务器发送通知或通过 Xamarin.Forms 接收通知吗?

0 投票
1 回答
70 浏览

signalr - SignalR 需要针对具有游戏 ID 的特定游戏而不是所有实时游戏

我没有想到这一点,但这段代码正在将游戏模型发送给所有客户端。我需要使用此控制器操作中的 GameID,并且只针对观看该游戏的客户端。我怎么做?

发布控制器动作

中心

客户