這是一個後續行動,我以前在這裏的問題..電話MapSignalR導致協議錯誤
MVC - trouble linking to another Controller/Action
,你可以看到,我最終也從另一個控制器得到我的觀點在新的顯示標籤,所以它工作。直到我安裝了SignalR。簡單的版本使用本教程爲指導..
http://www.asp.net/signalr/overview/getting-started/tutorial-getting-started-with-signalr-and-mvc
教程以下步驟來創建一個項目後,工作得很好。我唯一需要做的就是將jquery signalr javascript文件的版本更改爲最新版本(這是我沒有的,因爲該教程是用VS 2012編寫的)。
在任何情況下,以下爲我的網站相同的步驟後,我現在當我點擊鏈接/ SignalR/SRStart(新標籤)得到一個錯誤..
協議錯誤:未知運輸
玩弄我發現這隻發生在調用startup.cs文件中的app.MapSignalR()之後。無法理解,爲什麼自從我接下來的教程工作得很好,除非它與該鏈接上的另一個控制器交叉有關。它在SRStart視圖中放置了所有的信號連接代碼和回調函數,但我認爲它沒有達到,因爲頁面甚至沒有加載。
這是我的代碼..
startup.cs
public partial class Startup
{
public void Configuration(IAppBuilder app)
{
ConfigureAuth(app);
app.MapSignalR();
}
}
樞紐
public class SRHub : Hub
{
public void Send(string message)
{
// Call the addNewMessageToPage method to update clients.
var conn = GlobalHost.ConnectionManager.GetHubContext<SRHub>();
conn.Clients.All.addNewMessageToPage(message);
//Clients.All.addNewMessageToPage(message);
}
}
的JavaScript在SRStart.cshtml
$(function() {
// Reference the auto-generated proxy for the hub.
var conn = $.connection.sRHub;
// Create a function that the hub can call back to display messages.
conn.client.addNewMessageToPage = function (message) {
if (!message.contains('[EOF]')) {
populateStreamDialog(message);
}
};
$.connection.hub.start()
.done(function() {
});
});
任何幫助,將不勝感激。 。
什麼是SRStart控制器\視圖的路由配置? –
沒有一個可能是問題。對於MVC我仍然有點新,但我不知道要添加一個。你能給我一些關於這個PLZ的細節嗎? – gmes29