SignalR

官网demo:https://docs.microsoft.com/en-us/aspnet/signalr/overview/getting-started/tutorial-getting-started-with-signalr

1.项目添加SignalR

 

2.新建SignalR文件夹

 

3.添加ChatHub类,继承自Hub

 public class ChatHub : Hub
    {
        public void sendmsg(string message)
        {
            // Call the broadcastMessage method to update clients.
            Clients.All.TestShow(message);
        }
    }

 

4.添加Startup.cs类

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using Microsoft.Owin;
using Owin;

[assembly:OwinStartup(typeof(MySignalR.Startup))]
namespace MySignalR
{
    public class Startup
    {
        public void Configuration(IAppBuilder app)
        {
            // Any connection or hub wire up and configuration should go here
            app.MapSignalR();
        }
    }
}

 

5.html

@{
    ViewBag.Title = "Home Page";
    Layout = null;
}

<script src="~/Scripts/jquery-3.2.1.js"></script>

<script src="~/Scripts/jquery.signalR-2.2.2.js"></script>
<script src="../signalr/hubs"></script>  

<input id="Show" />
<button class="btn btn-default" id="strat">开始</button>
<div class="jumbotron" id="x"></div>

<script>

     $(function () {
         //声明hub代理
         var chat = $.connection.chatHub;
         //创建hub调用的broadcast函数
         chat.client.TestShow  = function (message) {
             alert(message)
         };

         //启动链接
         $.connection.hub.start().done(function () {
             $('#strat').click(function () {

                 //调用hub的Send方法
                 chat.server.sendmsg("GOGOGO");
                 ////清理输入框,并将焦点重新设置在输入框中
                 //$('#message').val('').focus();
             });
         });
     });
</script>

 

 

效果图

 

posted @ 2017-09-22 16:01  XinYiBuFang  阅读(149)  评论(0编辑  收藏  举报