我在我的MVC應用程序下面的樞紐,從這裏我想發送一個簡單的消息,我的客戶端代碼:客戶端嘗試通過signalR
using SignalR.Hubs;
public class Progress : Hub
{
public void
Send(string message)
{
// Call the addMessage method on all clients
Clients.addMessage(message);
}
public Progress()
{
Clients.addMessage("Starting to analyze image");
}
}
而在下面的JavaScript我的看法
<script src="/Scripts/jquery.signalR.js" type="text/javascript"></script>
<script src="/signalr/hubs" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function() {
// Proxy created on the fly
var connection = $.connection('/signalr/hubs/progress');
// Declare a function on the chat hub so the server can invoke it
connection.addMessage = function (message) {
$('#messages').append('<li>' + message.Content + '</li>');
};
// Start the connection
connection.start();
});
</script>
}
我的問題是,當代碼調用構造函數,或與此有關的發送方法,將客戶對象爲null。
當我調試客戶端代碼時,一切看起來都不錯。/signalr/hubs/route返回javascript代碼,並且在運行javascript時沒有錯誤。
我可以補充說,後端代碼運行在Umbraco 5 CMS環境之上,我不確定是否會造成任何干擾。
關於如何調試/解決此問題的任何建議?
這是國際奧委會我錯過的東西。謝謝 – 2012-02-20 19:35:02
請注意,AspNetHost已更改爲GlobalHost(在SignalR.Hosting.Common中定義)。 GlobalHost.ConnectionManager.GetHubContext();爲我工作。 –
2012-06-28 07:11:52