SignalR:对于Client Side,哪个signalR包,我需要安装吗?

时间:2016-11-26 11:12:20

标签: c# wcf asp.net-mvc-4 client signalr

我是SignalR的新手。我正在使用signalR

开发一个项目

服务方面我正在使用WCF和SignalR.And用于客户端,我正在使用ASP.NET MVC 4.

我按照以下网站中的步骤操作: -

Getting Started With SignalR and MVC 5

对于我的服务方,我安装了名为

的软件包

安装包Microsoft.AspNet.SignalR

此外,我还在WCF服务中创建了我的owin启动类和SignalR Hub类。

Owin StartupClass: -

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

SignalR HubClass: -

     public class ConvHub : Hub
       {
         public void send(string user)
          {
              Clients.All.broadcastMesage(user);
          }
       }

和我的WCF服务: -

     public class Service1 : IService1
     {
         public string GetValue(string username)
         {
            string name = "username ="+username;
            Console.WriteLine("u=" + name);
            return name;
         }
     }

我的服务端配置已完成。

但我不知道,我需要为ASP.NET MVC安装哪个软件包,同时将MVC视为单独的客户端。

任何人都可以告诉我包名,需要在MVC Client中安装吗?

1 个答案:

答案 0 :(得分:1)

您需要将 Microsoft.AspNet.SignalR.Client 安装到您的wcf服务。

在wcf服务中配置你的启动

 var connection = new HubConnection("{enter your hub url}");
 var myHub = connection.CreateHubProxy("ConvHub");


 myHub.Invoke("send", "your username").ContinueWith(task => {
                    if (task.IsFaulted)
                    {
                        Console.WriteLine("There was an error calling send: {0}", task.Exception.GetBaseException());
                    }
                    else
                    {
                        Console.WriteLine("Send Complete.");
                    }
                });