ASP.Net WebアプリケーションプロジェクトでSignalRを使用していますが、問題が発生しています。私の目標は、サイトの管理側に変更を加えて、一部のGridViewを更新することです。これを行うには、JavaScriptを実行するためのシグナルを送信し、それによってGridViewを含む更新パネルを更新することを計画していました。
現在の問題は、ハブがクライアントで実行するために呼び出そうとしているコードを取得できないことです。jquery.SignalR.jsファイルからFireBugで次のエラーを受け取りましたが、修正方法がわかりません。
Firefox can't establish a connection to the server at ws://localhost:40068/signalr?data=[]&transport=webSockets&clientId=92e4f7b9-0118-4fd9-bb55-5f22338d6162.
(function(n,t){"use strict";if(typeof ...on=n.signalR=i})(window.jQuery,window)
このエラーをスローした後も、接続を設定しているように見えますが、ハブを介して送信されているJavaScriptは実行されません。
私のサイトには次のハブを設定しました。
namespace testProject
{
public class statusChanges : Hub
{
public void ServerChange()
{
Clients.serverChange();
}
}
}
管理セクションのボタンクリックイベントに次のコードがあります。デバッグは、このコードがサーバーによって実行されていることを示しています。
var clients = Hub.GetClients<statusChanges>();
clients.serverChange();
最後に、このコードがページにあり、シグナルを受信したときにアラートを起動して、動作していることを確認しようとしています。
<script type="text/javascript">
$(function () {
var statusChange = $.connection.statusChanges;
statusChange.serverChange = function () {
alert(8);
};
$.connection.hub.start();
});
</script>
なぜこれが実行されないのか、またはFireBugエラーが何を意味するのかを誰かが知っていますか?