signalR 不起作用的简单示例

2024-01-18

无法让 SignalR 在我的机器上工作(使用 IE9)。输入一些文本并单击提交时,文本未按预期列出。另外,我希望列表能够从浏览器的多个实例中更新,但它不会发生。没有错误。有人可以帮忙吗?

C#

namespace TestSignalR.Hubs
{
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;

    /// <summary>
    /// Summary description for ChatHub.
    /// </summary>
    public class ChatHub : SignalR.Hubs.Hub
    {
        public void TestMessage(string message)
        {
            Clients.writeMessage(message);
        }
    }
}

ASPX

<input type="text" name="txtInput" id="txtInput" />
<button id="btnSubmit">Submit</button>

<ul id="messages">
</ul>
<script type="text/javascript" src="SignalR/Hubs"></script>
<script type="text/javascript">
    $(document).ready(function (message) {
        var chat = $.connection.chatHub;

        chat.writeMessage = function (message) {
            $("#messages").append("<li>" + message + "</li>");
        };

        $("#btnSubmit").click(function () {
            var text = $("#txtInput").val();
            chat.testMessage(text);
        });

        $.connection.hub.start();
    });

</script>

母版页包含 JQuery 和 SignalR 文件的参考:-

<script src="Scripts/jquery-1.6.4.min.js" type="text/javascript"></script>
<script src="Scripts/jquery.signalR-0.5.2.min.js" type="text/javascript"></script>

今天我正在处理同样的问题。

首先,您需要向 Hub 添加一个属性,其名称如下:

[HubName("chathub")]
public class ChatHub : SignalR.Hubs.Hub

接下来要做的是更改 javascript 中的调用顺序。您需要在接下来实例化集线器时进行连接。 因此,代码将如下所示:

$(document).ready(function (message) {
   var chat = $.connection.chatHub;

   $.connection.hub.start();

   chat.writeMessage = function (message) {
      $("#messages").append("<li>" + message + "</li>");
   };

    $("#btnSubmit").click(function () {
        var text = $("#txtInput").val();
        chat.testMessage(text);
    });        
 });

我希望这个对你有用。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

signalR 不起作用的简单示例 的相关文章

随机推荐

  • Angular2目标特定路由器出口

    我有一个应用程序 它有一个基本路由器插座 用作整个应用程序的基础 然后是一个子路由器出口 用户登录后使用该子路由器出口来显示由于单击基于基本路由器出口的导航链接而加载的任何组件 我希望在基本模板中单击导航链接时能够定位子路由器出口 当我单击
  • 如何在核心数据中存储 swift 枚举?

    Swift 允许您定义枚举 但核心数据不支持 开箱即用 如何保存它们 我在互联网上看到的推荐解决方案 迄今为止使用过 是使用私有变量 class ManagedObjectSubClass NSManagedObject enum Card
  • 查询数据库中的元组列表

    由于我是Python编程新手 所以我不太了解如何从数据库查询数据 首先 我在 SQL Server 中创建了数据库 其中包含 2 列 String列和Numeric column String Numeric One 1 Five 5 Th
  • 如何创建持久性 cookie 和非持久性 cookie?

    我似乎不知道如何创建持久性 cookie 和非持久性 cookie 例如 它们在发送回的 HTTP 标头方面有何不同 Cookie 有一个隐式或显式设置的到期日期 该日期控制它们的持续时间 取决于用户代理实际执行的情况 cookie 可能仅
  • C# 中的用户定义公式

    我有一个应用程序 用户可以为每个对象指定他自己的测量点 然后 这些测量值将用于将对象分类为 A 需要服务 B 服务应在 X 天内安排 C 不需要 ATM 服务 然而 这些对象几乎可以是任何东西 我们无法硬编码如何将测量值聚合到分类 我们需要
  • 编译器错误:“错误 CS0307:变量 'int' 不能与类型参数一起使用”

    如果我有以下代码 private void Check bool a bool b private void Check int a int b int c bool flag Check a lt b a gt flag c b 10 我
  • 如何使用H2数据库创建存储过程?

    有人尝试过使用 H2 数据库创建存储过程吗 要在 Java 函数中访问数据库 您确实需要连接 对于H2 有两种方式获得这样的连接 解决方案1 如果Java函数的第一个参数是ajava sql Connection 然后数据库提供连接 对于
  • 我们如何重命名 rpm 版本?

    我想将 rpm 文件的名称从 oldname 7 x86 64 rpm 更改为 newname 8 x86 64 rpm 我使用新名称创建了新的 rpm 但是当我尝试执行时 rpm Uvh newname 8 x86 64 rpm 它抛出以
  • 将 MS Word 2002 模板从 PC 转换为 Mac

    我必须转换数百个 MS Word 2002 模板 在 PC 上 才能在 Macintosh 上使用 我必须评估Word 模板是否可以在iWork Pages 和Mac 版Microsoft Word 中运行 我无法转换以下内容 Word V
  • Python PIL 检测图像是全黑还是全白

    使用 Python 成像库 PIL 如何检测图像的所有像素是黑色还是白色 Update 健康 状况 Not迭代每个像素 if not img getbbox 将测试图像是否是全黑的 Image getbbox 返回假值None如果图像中没有
  • C#——从 MySQL 检索数据并在不使用 DataGridView 的“页面”中对它们进行排序

    我是 C 编程新手 我正在开始创建一个应用程序 该应用程序通过 ProgressBars 显示 现实生活中 事件 何时到期 所有信息 有关这些事件的信息存储在数据库中 因此 打开与 my sql 数据库的连接我可以检索所有事件 问题是我不知
  • IsEnabled 时更改按钮图像

    我想在按钮时更改按钮图像IsEnabled False 下面是我的示例 当我将它们更改为时 绑定很好False True它仍然不起作用
  • 使用 LinearNDInterpolator (Python) 绘制插值

    我使用以下脚本对某些 x y z 数据使用 LinearNDInterpolator 但是 我不知道如何从插值数据到以热图形式绘制 显示插值 我是否遗漏了一些东西 比如根据 x 和 y 的最小值和最大值设置网格网格 任何帮助或例子都会很棒
  • 在 Codeigniter 中使用带有 .php 扩展名的外部 js [关闭]

    这个问题不太可能对任何未来的访客有帮助 它只与一个较小的地理区域 一个特定的时间点或一个非常狭窄的情况相关 通常不适用于全世界的互联网受众 为了帮助使这个问题更广泛地适用 访问帮助中心 help reopen questions 我正在使用
  • 如何导出正确的TSV?

    简短而有趣 如何从 R 导出 TSV CSV write table write csv almost works test lt data frame a 2 4 b 3 5 write table test file test tsv
  • 如何在AWS上定义spring配置文件

    我已将 war 文件作为 java 应用程序部署在 AWS 的 Elastic Beanstalk 上 我想在 AWS 上指定 spring profiles active 就像我执行时所做的那样 java jar Dspring prof
  • Unsafe.defineClass 挂起 - 缓慢的反射调用

    我在 Java 8 Spring 5 Tomcat 8 5 Web 应用程序中观察到极长的运行请求 gt 30 秒 大多数请求都会正常响应 值得注意的是 经过几天的正常运行后 长跑者的频率有所增加 Threaddumps 显示 Unsafe
  • 迭代+永远=迭代M?重复一个带有反馈的动作

    我试图永远重复一个 IO 操作 但将一个执行的结果输入到下一个执行中 像这样的东西 poorly named iterateM Monad m gt a gt m a gt a gt m b iterateM f a f a gt gt i
  • PHPstorm 中的交互式 shell

    是否可以使用交互式外壳 http www php net manual en features commandline interactive php在 PHPstorm 中像 PyCharm 一样 PhpStorm 10 于2015年11
  • signalR 不起作用的简单示例

    无法让 SignalR 在我的机器上工作 使用 IE9 输入一些文本并单击提交时 文本未按预期列出 另外 我希望列表能够从浏览器的多个实例中更新 但它不会发生 没有错误 有人可以帮忙吗 C namespace TestSignalR Hub