2

我刚刚安装了信号器示例(使用 nuget 下载)

nuget 中的所有内容都安装得很好,它是一个干净的项目(只是为了测试示例),但我收到以下错误:

throw "SignalR: 必须在发送数据之前启动连接。在 .send() 之前调用 .start()";

4

4 回答 4

8

使用包管理器

install-package Microsoft.Owin.Host.SystemWeb

并在 startup.cs 中进行更改

using Microsoft.Owin;
using Owin;

[assembly: OwinStartup(typeof(Microsoft.AspNet.SignalR.StockTicker.Startup), "Configuration")]

namespace Microsoft.AspNet.SignalR.StockTicker


{

    public static class Startup
    {
        public static void Configuration(IAppBuilder app)
        {
            Microsoft.AspNet.SignalR.StockTicker.Startup.ConfigureSignalR(app);
        }
        public static void ConfigureSignalR(IAppBuilder app)
        {
            app.MapSignalR();
        }
    }
}
于 2014-03-04T11:41:55.250 回答
1

将 Startup.cs 文件中的代码替换为以下代码块,这将有望修复 js 错误

using Microsoft.Owin;
using Owin;

[assembly: OwinStartup(typeof(Microsoft.AspNet.SignalR.StockTicker.Startup))]
namespace Microsoft.AspNet.SignalR.StockTicker
{
    public static class Startup
    {
        public static void Configuration(IAppBuilder app)
        {
             app.MapSignalR();
        }
    }
}
于 2013-12-31T18:10:54.817 回答
0

您可以在以下位置找到带有源代码的完整工作演示:

包含VS2010解决方案的示例

这第一次对我有用。

于 2012-05-15T22:18:23.747 回答
0

你必须先打电话,

$.connection.hub.start

例如 :

var myConnection = $.connection.myConnection;
$.connection.hub.start({ transport: 'auto' }, function () {
    alert('connected');
});
/// now you can do what ever you want.
myConnection.SendHello('Just Testing');

现在,当您加载打开页面时,您应该会看到浏览器消息(已连接),以确保 signalR 已建立连接。

于 2012-03-01T11:26:28.497 回答