- 博客(0)
- 资源 (1)
- 收藏
- 关注
SignalR 2.0 and MVC 5即时通讯完整版示例
本教程将向您介绍使用ASP.NET SignalR 2和ASP.NET MVC 5进行实时Web应用程序开发。本教程使用与SignalR入门教程相同的聊天应用程序代码,但演示如何将其添加到MVC 5应用程序。
在这个主题中,您将学习以下SignalR开发任务:
将SignalR库添加到MVC 5应用程序。
创建集线器和OWIN启动类来将内容推送到客户端。
在网页中使用SignalR jQuery库来发送消息并从集线器显示更新。
以下屏幕截图显示了在浏览器中运行的已完成的聊天应用程序。
聊天实例
部分:
设置项目
运行示例
检查代码
下一步
设置项目
先决条件:
Visual Studio 2013.如果您没有Visual Studio,请参阅ASP.NET下载以获取免费的Visual Studio 2013 Express开发工具。
本节介绍如何创建ASP.NET MVC 5应用程序,添加SignalR库以及创建聊天应用程序。
在Visual Studio中,创建一个面向.NET Framework 4.5的C#ASP.NET应用程序,将其命名为SignalRChat,然后单击确定。
创建网页
在New ASP.NET Project对话框中选择MVC,然后点击Change Authentication。
创建网页
在更改身份验证对话框中选择无身份验证,然后单击确定。
选择不验证
注意
如果您为您的应用程序选择不同的身份验证提供程序,Startup.cs则将为您创建一个班级; 您将不需要Startup.cs在下面的第10步中创建自己的课程。
在“ 新建ASP.NET项目”对话框中单击确定。
打开工具| 库包管理器| 程序包管理器控制台并运行以下命令。此步骤向项目添加了一组启用SignalR功能的脚本文件和程序集引用。
install-package Microsoft.AspNet.SignalR
在解决方案资源管理器中,展开脚本文件夹。请注意,SignalR的脚本库已添加到项目中。
脚本文件夹
在解决方案资源管理器中,右键单击该项目,选择添加| 新建文件夹,并添加一个名为Hubs的新文件夹。
用鼠标右键单击该Hubs文件夹,单击添加| 新建项目,选择Visual C#| Web | SignalR节点安装窗格中,从中心窗格中选择SignalR Hub Class(v2),并创建一个名为ChatHub.cs的新中心。您将使用此类作为将消息发送到所有客户端的SignalR服务器中心。
创建新的中心
用下面的代码替换ChatHub类中的代码。
C#
复制
using System;
using System.Web;
using Microsoft.AspNet.SignalR;
namespace SignalRChat
{
public class ChatHub : Hub
{
public void Send(string name, string message)
{
// Call the addNewMessageToPage method to update clients.
Clients.All.addNewMessageToPage(name, message);
}
}
}
创建一个名为Startup.cs的新类。将文件的内容更改为以下内容。
C#
复制
using Owin;
using Microsoft.Owin;
[assembly: OwinStartup(typeof(SignalRChat.Startup))]
namespace SignalRChat
{
public class Startup
{
public void Configuration(IAppBuilder app)
{
// Any connection or hub wire up and configuration should go here
app.MapSignalR();
}
}
}
编辑HomeController在Controllers / HomeController.cs中找到的类,并将以下方法添加到类中。此方法返回您将在稍后的步骤中创建的聊天视图。
C#
复制
public ActionResult Chat()
2017-12-04
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人