2

SignalRライブラリは初めてです。VS2010で新しいWebプロジェクトを作成し、パッケージマネージャーコンソールで次のコマンドを実行してSignalRパッケージをセットアップしました。

PM> Install-Package Microsoft.Aspnet.SignalR -pre

So it downloaded all the necessary files into the application.
----------
Successfully installed 'Microsoft.AspNet.SignalR 1.0.0-rc2'.
Successfully added 'jQuery 1.6.4' to demo.
Successfully added 'Microsoft.AspNet.SignalR.JS 1.0.0-rc2' to demo.
Successfully added 'Newtonsoft.Json 4.5.11' to demo.
Successfully added 'Microsoft.AspNet.SignalR.Core 1.0.0-rc2' to demo.
Successfully added 'Owin 1.0' to demo.
Successfully added 'Microsoft.AspNet.SignalR.Owin 1.0.0-rc2' to demo.
Successfully added 'Microsoft.Web.Infrastructure 1.0.0.0' to demo.
Successfully added 'Microsoft.Owin.Host.SystemWeb 1.0.0-rc2' to demo.
Successfully added 'Microsoft.AspNet.SignalR.SystemWeb 1.0.0-rc2' to demo.
Successfully added 'Microsoft.AspNet.SignalR 1.0.0-rc2' to demo.
----------

ここで、という名前の新しいクラスファイルを追加しましたLetsHub.cs

そのファイルに次のコードを書きました。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using Microsoft.AspNet.SignalR.Hubs;

namespace demo.Hubs
{
  [HubName("chatHub")]
  public class LetsChat : Hub
  {
      public void SendMsg(string Message)
      {
         Clients.All.addMessage(Message);
      }
  }
}

Hubこのクラスを継承できません。

Type or Namespace name Hub cound not be found ( are you missing using directive or assemblr reference ? ).

VS2012でも同じ問題に直面しています。

4

3 に答える 3

3

ハブクラスは、RC2の別の名前空間に移動されました。Microsoft.AspNet.SignalRに変更してください

于 2013-02-06T22:25:01.127 に答える
1

public class LetsChat : Hubに変更

public class LetsChat : Microsoft.AspNet.SignalR.Hub
于 2014-02-20T03:04:54.380 に答える
1

受け入れられた答えは私にはうまくいきません。私の.NETCore3.1では、これは私のコードです。

using System.Threading.Tasks;
using Microsoft.AspNetCore.SignalR;

namespace SignalRChat.Hubs
{
    public class ChatHub : Hub
    {
        public async Task SendMessage(string user, string message)
        {
            await Clients.All.SendAsync("ReceiveMessage", user, message).ConfigureAwait(false);
        }
    }
}
于 2020-04-14T03:26:24.697 に答える