SignalR 在 Visual Studio 2017 下不起作用



我不知道是VS2017还是什么......但我有最简单的signalR应用程序,但它不起作用。这是我的代码,也许你会发现一些东西:

我创建了空 ASP.NET Web 应用程序。

添加了启动类:

[assembly: OwinStartup(typeof(Connect4.Server.Startup))]
namespace Test.Server
{
    public class Startup
    {
        public void Configuration(IAppBuilder app)
        {
            app.MapSignalR();
        }
    }
}

添加了聊天中心:

namespace Test.Server
{
    [HubName("chatHub")]
    public class ChatHub : Hub
    {
        public void send(string message)
        {
            Clients.All.addMessage(message);
        }
    }
}

和"默认.aspx":

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="Test.Server.Default" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title>Signalr Chat Messenger</title>
    <script src="Scripts/jquery-1.6.4.js"></script>
    <script src="Scripts/jquery.signalR-2.2.2.js"></script>
</head>
<body>
    <form id="form1" runat="server">
    <script type="text/javascript">
        $(function () {
            var IWannaChat = $.connection.chatHub;
            IWannaChat.client.addMessage = function (message) {
                $('#listMessages').append('<li>' + message + '</li>');
            };
            $("#SendMessage").click(function () {
                IWannaChat.server.send($('#txtMessage').val());
            });
            $.connection.hub.start();
        });
    </script>
    <div>
        <input type="text" id="txtMessage" />
        <input type="button" id="SendMessage" value="broadcast" />
        <ul id="listMessages">
        </ul>
    </div>
    </form>
</body>
</html>

你能看出什么问题吗?该网站使用文本框和广播按钮打开。但是我单击它后没有任何反应。

顺便说一句。我不得不取消选中为 ASP.NET(Chrome 和 IE(启用 JavaScript 调试"(在">工具">"选项">>"常规">"为 ASP.NET(Chrome 和 IE(启用 JavaScript 调试"中(,因为此问题

您需要

添加hubs脚本

<script type="text/javascript" src="/signalr/hubs"></script>

最新更新