Я пытаюсь использовать концентраторы SignalR в приложении, но сейчас мне не везет. Я прочитал статью Скотта Хансельмана , а также посмотрел этот пост в блоге, который показывает, как реализовать его в MVC, в основном делая то же самое. К сожалению, мне не повезло. На стороне клиента javascript, кажется, работает нормально [не считая ничего не происходящего], но когда я ставлю точки останова в коде, он показывает, что вызывается контроллер, а не код концентратора. Код, который я использую, это:
// Client side javascript:
var hooking;
$(function() {
// Setup SignalR
hooking = $.connection.hooking;
hooking.removeLead = function(ref) {
$("lead" + ref).remove();
};
$.connection.hub.start();
}
});
// Hooking.cs (placed in application root)
public class Hooking : Hub
{
public void Submit(string jsonString)
{
var serializer = new JavaScriptSerializer();
var json = serializer.Deserialize<HookingLeadResult>(jsonString);
Clients.removeLead(json.Ref); // Remove lead from client hooking windows
// update lead gen
}
}
Когда я вызываю hooking.submit(resultJson);
позже в моем коде, по какой-то причине он вызывает действие Index моего HookingController (текущей страницы). Кто-нибудь знает, как правильно вызвать функцию Submit из Hooking.cs?