Ho un problema che quando invio messaggi dal server al client non arrivano al client nell'ordine originale. Ho una funzione di test qui:SignalR come preservare l'ordine dei messaggi dal server al client
public async Task Hello(string group)
{
await Groups.Add(Context.ConnectionId, group);
await Clients.Group("grp1").Hello("grp1");
await Clients.Group("grp2").Hello("grp2");
await Clients.All.Hello("all");
}
E su client:
var chanceHub = $.connection.chanceHub;
chanceHub.client.Hello = function (message) {
alert(message);
}
$.connection.hub.start().done(function() {
chanceHub.server.hello("grp1");
});
mi aspetto di ottenere 2 segnalazioni in questo ordine: "Grp1", quindi "tutti" Ma ho sempre trovato la messaggio "tutto" prima. C'è un modo per risolvere questo problema?
SignalR preserverà l'ordine dei messaggi. Sei sicuro che il client sia stato aggiunto al gruppo? –
@StephenCleary sì, il client è in grp1. Ma l'ordine non è conservato e non riesco a capire perché ... l'ordine dei messaggi all'interno di un gruppo è ok, ma quando si parla di messaggistica tra gruppi, tutto cambia shuffles – CodeDemen