Ich habe Probleme mit OnConnected und OnDisconnected Überschreibungen in meinem Hub nicht feuern.SignalR OnConnected und OnDisconnected nicht feuern
Für Replikationszwecke, ich habe einen sehr einfachen Hub bekommt:
public class OnlineHub : Hub
{
public void TestMethod()
{
var a = 1;
}
public override System.Threading.Tasks.Task OnConnected()
{
return Clients.All.connected(Context.ConnectionId, DateTime.Now.ToString());
}
public override System.Threading.Tasks.Task OnDisconnected()
{
return Clients.All.disconnected(Context.ConnectionId, DateTime.Now.ToString());
}
}
Und eine aspx Seite:
<script type="text/javascript">
$(function() {
$("#btn").click(function() {
$.connection.onlineHub.server.testMethod();
});
$.connection.onlineHub.server.connected = function (id, date) {
$("#results").append("connected: " + id + " : " + date + "</br>");
};
$.connection.onlineHub.server.disconnected = function (id, date) {
$("#results").append(("connected: " + id + " : " + date + "</br>");
};
$.connection.onlineHub.connection.start();
});
</script>
Ich bin mit jQuery 1.6.4 und SignalR 1.0.0-Alpha2. Die clientseitig verbundenen und nicht verbundenen Methoden werden nicht ausgeführt. Und wenn ich einen Breakpoint in OnConnected oder OnDisconnected setze, treffen die Breakpoints nicht.
Die Verbindung wird hergestellt, da meine TestMethod-Aufrufe ok sind und ich eine Verbindungs-ID von signalRs ausgehandeltem Anruf zurückbekomme.
Ich bin sicher, ich vermisse etwas Einfaches.
Vielen Dank im Voraus.
Danke für die Antwort, in diesem Fall ist die Art, wie ich es tue, korrekt, da es kein Handler als solcher ist, sondern eine Definition einer Methode, die der Server aufrufen kann. Trotzdem danke. :) – DavidGouge
Ich bin mir ziemlich sicher, dass ich recht habe! https://github.com/SignalR/SignalR/wiki/SignalR-JS-Client –
Es funktioniert nicht für mich. https://stackoverflow.com/questions/47157099/signalr2-onconnected-not-working-as-per-documentation – Developer