如何将ASP.NET 5与信号器

时间:2016-05-16 10:11:21

标签: signalr asp.net5

我正在尝试使用SignalR创建一个ASP.NET 5 Web应用程序。我创建了一个空的网络应用,我添加了一个包含一些内容的index.html页面,但我无法集成SignalR。到目前为止,为了使用SignaR,我已经执行了以下步骤:

1)我在project.json文件中添加了以下依赖项:

"Microsoft.AspNet.SignalR.Server": "3.0.0-rc1-final"

2)在Startup课程中,我添加了

services.AddSignalR();

到ConfigureServices方法,

app.UseSignalR();

到Configure方法。

3)我已经在项目中添加了一个派生自Microsoft.AspNet.SignalR.Hub的类,并在其中插入了一个公共方法。

在此之后,在index.html中,我添加了尝试访问该方法的逻辑,但是当我启动应用程序时,firefox控制台说

  

错误:$未定义

以下是javascript代码:

<script>
        var app = angular.module("myapp", []);
        app.controller("myctr", function ($scope) {
            $scope.input = "";
            $scope.output = "";
            $.connection.myHub1.client.JSMet1 = function (x) {
                $scope.$apply(function () {
                    $scope.output = x;
                });
            };
            $scope.AggiornaTesto = function () {
                $.connection.myHub1.server.cSMet1($scope.input);
            };
            $.connection.hub.start();
        });
    </script>

如你所见,我也使用AngulaJS。

1 个答案:

答案 0 :(得分:0)

  

错误:$未定义

由于您尚未在页面中添加function graphs(){ $company_id =$this->session->userdata('itms_company_id');<br> $data[0]["lable"] = "Untracked";<br> $data[0]['value'] = $this->mdl_fetch->count_untracked_assets ($company_id);<br> $data[1]["lable"] = "Available";<br> $data[1]["value"] = $this->mdl_fetch->count_available_devices ($company_id);<br> $data[2]["lable"] = "Groups";<br> $data[2]["lable"] = $this->mdl_fetch->count_unassigned_groups($company_id);<br> $data[3]["lable"] = "Users";<br> $data[3]["lable"] = $this->mdl_fetch->count_unassigned_users($company_id);<br> echo json_encode($data); } 引用,请阅读this article from Microsoft,它将逐步演示如何使用jQuery项目实施SingnalR