使用SignalR在服务器(asp mvc framework 4.5)和客户端(带框架3.5的控制台应用程序)之间进行通信)

时间:2017-03-19 18:18:04

标签: c# asp.net-mvc signalr

我有一个在4.5框架中运行的ASP MVC应用程序 此应用程序应与使用4.5框架的其他控制台应用程序实时通信 因此我使用SignalR 在服务器(mvc应用程序)我安装了Microsoft.AspNet.SignalR“版本2.1.2 在客户端(Console App)中我安装了Microsoft.AspNet.SignalR.Client version =“2.2.1” 这很顺利 但问题始于我的客户要求控制台应用程序应在.Net Framework 3.5中运行而不是在4.5

中运行

当我尝试将控制台应用程序迁移到3.5框架时,服务器和客户端之间的通信不起作用

我用3.5框架创建了一个新的控制台应用程序,我使用“Nivot.SignalR.Client.Net35”version =“2.0.0” 和Microsoft.AspNet.SignalR -Version 1.2.2在服务器但我有这个消息=您正在使用与服务器不兼容的客户端版本。客户端版本1.3,服务器版本1.2。        来源= Nivot.SignalR.Client.Net35 当我在服务器中使用包Microsoft.AspNet.SignalR -Version 2.0.1时我有这样的消息:System.Threading.dll中发生了未处理的类型'System.AggregateException'异常 更多信息:TaskExceptionHolder_UnhandledException

如何解决这个问题? 有没有一个例子在我的配置中使用signalR?

1 个答案:

答案 0 :(得分:1)

SignalR至少需要.NET Framework 4.它在很大程度上依赖于.NET Framework 3.5不支持的async / await和Tasks。应该可以为.NET Framework 3.5编写SignalR客户端,但这是一项非常重要的任务(尤其是您必须自己管理线程)。