SignalR プロジェクトを開始する方法については、この簡単なチュートリアルに従っています。Hub クラスには、次のものがあります。
using Microsoft.AspNet.SignalR.Hubs;
namespace MvcApplication8.Hubs
{
public class ChatHub : Hub
{
public void BroadcastMessage(string message)
{
Clients.writeMessage(message);
}
}
}
クライアントコード:
$(document).ready(function () {
var chat = $.connection.chatHub;
chat.writeMessage = function(msg) {
$("#messages").append("<li>" + msg + "</li>");
};
$("#buttonSubmit").click(function () {
chat.broadcastMessage($("#txtInput").val());
});
$.connection.hub.start();
});
ただし、次のようなコンパイル時エラーが発生します。
'Microsoft.AspNet.SignalR.Hubs.HubConnectionContext' には 'writeMessage' の定義が含まれておらず、タイプ 'Microsoft.AspNet.SignalR.Hubs.HubConnectionContext' の最初の引数を受け入れる拡張メソッド 'writeMessage' が見つかりませんでした (あなたはusing ディレクティブまたはアセンブリ参照がありませんか?)
どこが間違っていましたか?
パッケージ マネージャー コンソール "Install-Package Microsoft.AspNet.SignalR -Pre" を使用して、http: //nuget.org/packages/microsoft.aspnet.signalrから SignalR をプロジェクトにインストールしました。