|
根据,项目需要,要用到websocket做数据推送,所以,要用到SignalR,由于,SignalR要求.net 4.5的框架
直接右击项目属性改成.net 4.5即可,重新运行一切正常,暂时木有什么错误。。
nuget安装:
安装完成如下:
程序包管理器控制台主机版本 4.0.0.2323
键入 "get-help NuGet" 可查看所有可用的 NuGet 命令。
PM> Install-Package Microsoft.AspNet.SignalR
正在尝试收集与目标为“.NETFramework,Version=v4.5”的项目“WWW_ITSVSE_COM.Web”有关的包“Microsoft.AspNet.SignalR.2.2.2”的依赖项信息
收集依赖项信息花费时间 24.53 sec
正在尝试解析程序包“Microsoft.AspNet.SignalR.2.2.2”的依赖项,DependencyBehavior 为“Lowest”
现有 packages.config 文件中检测到一个或多个未解析包依赖项约束。必须解析所有依赖项约束以添加或更新包。如果正在更新这些包,则可忽略此消息,如果没有更新这些包,错误可能阻止当前包操作: 'DotNetOpenAuth.Core 4.1.4.12333 约束: Microsoft.Net.Http ', 'Microsoft.AspNet.WebApi.Client 4.0.20710 约束: Microsoft.Net.Http (>= 2.0.20710 && < 2.1.0)', 'Microsoft.AspNet.WebApi.OData 4.0.0 约束: Microsoft.Net.Http (>= 2.0.20710 && < 2.1.0)'
解析依赖项信息花费时间 0 ms
正在解析操作以安装程序包“Microsoft.AspNet.SignalR.2.2.2”
已解析操作以安装程序包“Microsoft.AspNet.SignalR.2.2.2”
从“nuget.org”检索包“Microsoft.AspNet.SignalR 2.2.2”
从“nuget.org”检索包“Microsoft.AspNet.SignalR.Core 2.2.2”
从“nuget.org”检索包“Microsoft.AspNet.SignalR.JS 2.2.2”
从“nuget.org”检索包“Microsoft.AspNet.SignalR.SystemWeb 2.2.2”
从“nuget.org”检索包“Microsoft.Owin 2.1.0”
从“nuget.org”检索包“Microsoft.Owin.Host.SystemWeb 2.1.0”
从“nuget.org”检索包“Microsoft.Owin.Security 2.1.0”
从“nuget.org”检索包“Owin 1.0.0”
GET https://api.nuget.org/packages/microsoft.aspnet.signalr.systemweb.2.2.2.nupkg
GET https://api.nuget.org/packages/microsoft.owin.2.1.0.nupkg
GET https://api.nuget.org/packages/microsoft.aspnet.signalr.core.2.2.2.nupkg
GET https://api.nuget.org/packages/microsoft.aspnet.signalr.2.2.2.nupkg
GET https://api.nuget.org/packages/microsoft.aspnet.signalr.js.2.2.2.nupkg
GET https://api.nuget.org/packages/microsoft.owin.security.2.1.0.nupkg
GET https://api.nuget.org/packages/microsoft.owin.host.systemweb.2.1.0.nupkg
GET https://api.nuget.org/packages/owin.1.0.0.nupkg
OK https://api.nuget.org/packages/microsoft.aspnet.signalr.systemweb.2.2.2.nupkg 150 毫秒
OK https://api.nuget.org/packages/microsoft.aspnet.signalr.core.2.2.2.nupkg 152 毫秒
正在安装 Microsoft.AspNet.SignalR.SystemWeb 2.2.2。
正在安装 Microsoft.AspNet.SignalR.Core 2.2.2。
OK https://api.nuget.org/packages/microsoft.owin.2.1.0.nupkg 436 毫秒
正在安装 Microsoft.Owin 2.1.0。
OK https://api.nuget.org/packages/microsoft.aspnet.signalr.js.2.2.2.nupkg 3705 毫秒
正在安装 Microsoft.AspNet.SignalR.JS 2.2.2。
OK https://api.nuget.org/packages/microsoft.aspnet.signalr.2.2.2.nupkg 4080 毫秒
正在安装 Microsoft.AspNet.SignalR 2.2.2。
OK https://api.nuget.org/packages/microsoft.owin.security.2.1.0.nupkg 4080 毫秒
正在安装 Microsoft.Owin.Security 2.1.0。
OK https://api.nuget.org/packages/microsoft.owin.host.systemweb.2.1.0.nupkg 4294 毫秒
正在安装 Microsoft.Owin.Host.SystemWeb 2.1.0。
正在将程序包“Microsoft.AspNet.SignalR.JS.2.2.2”添加到文件夹“C:\project\company\WWW_ITSVSE_COM\packages”
已将程序包“Microsoft.AspNet.SignalR.JS.2.2.2”添加到文件夹“C:\project\company\WWW_ITSVSE_COM\packages”
已将程序包“Microsoft.AspNet.SignalR.JS.2.2.2”添加到“packages.config”
已将“Microsoft.AspNet.SignalR.JS 2.2.2”成功安装到 WWW_ITSVSE_COM.Web
OK https://api.nuget.org/packages/owin.1.0.0.nupkg 6801 毫秒
正在安装 Owin 1.0.0。
正在将程序包“Owin.1.0.0”添加到文件夹“C:\project\company\WWW_ITSVSE_COM\packages”
已将程序包“Owin.1.0.0”添加到文件夹“C:\project\company\WWW_ITSVSE_COM\packages”
已将程序包“Owin.1.0.0”添加到“packages.config”
已将“Owin 1.0.0”成功安装到 WWW_ITSVSE_COM.Web
正在将程序包“Microsoft.Owin.2.1.0”添加到文件夹“C:\project\company\WWW_ITSVSE_COM\packages”
已将程序包“Microsoft.Owin.2.1.0”添加到文件夹“C:\project\company\WWW_ITSVSE_COM\packages”
已将程序包“Microsoft.Owin.2.1.0”添加到“packages.config”
已将“Microsoft.Owin 2.1.0”成功安装到 WWW_ITSVSE_COM.Web
正在将程序包“Microsoft.Owin.Host.SystemWeb.2.1.0”添加到文件夹“C:\project\company\WWW_ITSVSE_COM\packages”
已将程序包“Microsoft.Owin.Host.SystemWeb.2.1.0”添加到文件夹“C:\project\company\WWW_ITSVSE_COM\packages”
已将程序包“Microsoft.Owin.Host.SystemWeb.2.1.0”添加到“packages.config”
已将“Microsoft.Owin.Host.SystemWeb 2.1.0”成功安装到 WWW_ITSVSE_COM.Web
正在将程序包“Microsoft.Owin.Security.2.1.0”添加到文件夹“C:\project\company\WWW_ITSVSE_COM\packages”
已将程序包“Microsoft.Owin.Security.2.1.0”添加到文件夹“C:\project\company\WWW_ITSVSE_COM\packages”
已将程序包“Microsoft.Owin.Security.2.1.0”添加到“packages.config”
已将“Microsoft.Owin.Security 2.1.0”成功安装到 WWW_ITSVSE_COM.Web
正在将程序包“Microsoft.AspNet.SignalR.Core.2.2.2”添加到文件夹“C:\project\company\WWW_ITSVSE_COM\packages”
已将程序包“Microsoft.AspNet.SignalR.Core.2.2.2”添加到文件夹“C:\project\company\WWW_ITSVSE_COM\packages”
已将程序包“Microsoft.AspNet.SignalR.Core.2.2.2”添加到“packages.config”
已将“Microsoft.AspNet.SignalR.Core 2.2.2”成功安装到 WWW_ITSVSE_COM.Web
正在将程序包“Microsoft.AspNet.SignalR.SystemWeb.2.2.2”添加到文件夹“C:\project\company\WWW_ITSVSE_COM\packages”
已将程序包“Microsoft.AspNet.SignalR.SystemWeb.2.2.2”添加到文件夹“C:\project\company\WWW_ITSVSE_COM\packages”
已将程序包“Microsoft.AspNet.SignalR.SystemWeb.2.2.2”添加到“packages.config”
已将“Microsoft.AspNet.SignalR.SystemWeb 2.2.2”成功安装到 WWW_ITSVSE_COM.Web
正在将程序包“Microsoft.AspNet.SignalR.2.2.2”添加到文件夹“C:\project\company\WWW_ITSVSE_COM\packages”
已将程序包“Microsoft.AspNet.SignalR.2.2.2”添加到文件夹“C:\project\company\WWW_ITSVSE_COM\packages”
已将程序包“Microsoft.AspNet.SignalR.2.2.2”添加到“packages.config”
已将“Microsoft.AspNet.SignalR 2.2.2”成功安装到 WWW_ITSVSE_COM.Web
执行 nuget 操作花费时间 18.26 sec
已用时间: 00:00:45.5513744
PM>
既然,安装完成了SignalR,怎么进行注册呢?例如,我们的控制器什么的,然后,我想到了Global.asax.cs 文件,
百度了一下,发现注册命令如下:
发现报错,错误如下:
错误 CS0619 “SignalRRouteExtensions.MapHubs(RouteCollection)”已过时:“Use IAppBuilder.MapSignalR in an Owin Startup class. See http://go.microsoft.com/fwlink/?LinkId=320578 for more details.” WWW_ITSVSE_COM.Web C:\project\company\WWW_ITSVSE_COM\WWW_ITSVSE_COM.Web\Global.asax.cs 30 活动的
SignalR的版本,从1.2.2开始,包括2.0以上,都是使用OWIN中间件来启动的。
所以,用nuget安装好signalR2.0后,不要在globalaxac的application_start中启动路由,
而应该按要建一个Startup类,来作为启动类。
然后,我们在项目根目录下面,新建了一个Startup类,代码如下:
XXX代表我们的项目名称,然后,重新启动,发现不报错了!!!!
其实,如果,我们不新建Startup类,启动之后会报如下错误,我是之后才知道的。
The following errors occurred while attempting to load the app.
- No assembly found containing an OwinStartupAttribute.
- No assembly found containing a Startup or [AssemblyName].Startup class.
To disable OWIN startup discovery, add the appSetting owin:AutomaticAppStartup with a value of "false" in your web.config.
To specify the OWIN startup Assembly, Class, or Method, add the appSetting owin:AppStartup with the fully qualified startup class or configuration method name in your web.config.
|
上一篇:【SignalR】入门和介绍下一篇:mvc4.0 如何使用SignalR(二)
|