Istnieje wiele "połączeń musi zaczynać się przed wysłaniem danych" tutaj i GitHub, ale prawie nie znajduję problemów związanych z hubem.Metoda wywołania SignalR: połączenie musi zostać uruchomione, aby można było wysłać dane.
$(function() {
// Declare a proxy to reference the hub.
var connection = $.hubConnection('http://www.website.net/');
var chat = connection.createHubProxy('MyHub');
// Start the connection.
$.connection.hub.start().done(function() {
console.log('Connect! connection Id=' + $.connection.hub.id);
$('#sendmessage').click(function() {
chat.invoke('method1','0000').done(function() {
console.log ('Invocation of method1 succeeded');
}).fail(function (error) {
console.log('Invocation of method1 failed. Error: ' + error);
});
});
})
.fail(function(){ console.log('Could not Connect!'); });
});
Powyższy kod umożliwia wykonanie metody po kliknięciu przycisku przez użytkownika. Mogę sprawdzić, czy metoda działa z moją aplikacją WPF .NET.
Potrafię pomyślnie uzyskać identyfikator połączenia, ale po kliknięciu przycisku pojawia się komunikat "Metoda wywołania SignalR: połączenie musi zostać uruchomione, aby można było wysłać dane. Wywołaj .start() przed błędem .send().
Co było nie tak?
Dobrze, samouczek nie wyjaśnia, że połączenie i serwer pośredniczący centrum muszą zostać zainicjalizowane przed uruchomieniem połączenia – Raffaeu