WCF bietet umfangreiche Unterstützung für Versionierungsdienste, Verträge, Clients usw. Ich untersuche SignalR als Möglichkeit für meine implementierten .NET-Clients, mit dem Server zu sprechen, habe aber keine Ressourcen gefunden, wie Hubs und Clients unabhängig entwickelt werden können. Gibt es einen Grund dafür? Sicherlich muss es eine empfohlene Best Practice für die Handhabung der Hub-Evolution geben (Hinzufügen von Methoden, Ändern von Parametern in vorhandenen Methoden, Entfernen von Operationen usw.), wenn Sie nicht unbedingt die Kontrolle über Client-Versionen haben.Welche Versionierungsstrategien sind für SignalR-Hubs mit .NET-Clients verfügbar?
Antwort
Wenn Probleme bei der Versionssteuerung auftreten, zwingt SignalR Clients, ihre SignalR-Versionen durch Ausnahme zu aktualisieren oder herabzustufen.
Wenn die Version von SignalR, die Sie auf dem Client haben unterscheidet sich von der Version, die Sie auf dem Server haben, ist SignalR oft in der Lage zu der Differenz anzupassen. Beispiel: Ein Server mit der SignalR-Version 2 unterstützt Clients, auf denen 1.1.x installiert ist, sowie Clients , auf denen Version 2 installiert ist. Wenn der Unterschied zwischen der Version auf dem Server und der Version auf dem Client zu groß ist oder wenn der -Client neuer als der Server ist, löst SignalR eine InvalidOperationException-Ausnahme aus, wenn der Client versucht, eine Verbindung herzustellen. Die Fehlermeldung lautet "Sie verwenden eine Version des -Clients, der nicht mit dem Server kompatibel ist. Clientversion X.X, Serverversion X.X".
Verwandte Article
Nach der Version 2.1 unterstützt SignalR strongly-typed hubs. Sie können dies neben dem dynamischen Hub verwenden.
- 1. Welche Benachrichtigungen sind für iCloud verfügbar?
- 2. Welche alternativen Sitzungsmanager sind für Emacs verfügbar?
- 3. Welche Optionen sind für VisualSVNServerHooks.exe verfügbar?
- 4. CMS Versionierungsstrategien für Inhalte
- 5. Welche GUI-Clients sind für Mercurial verfügbar?
- 6. Welche vim Plugins sind für Eclipse verfügbar?
- 7. Welche Optionen sind für org.osgi.framework.Bundle.stop (int) verfügbar?
- 8. Welche Javascript-Abhängigkeitsverwaltungslösungen sind für Rails verfügbar?
- 9. Welche Clusterlösungen sind in .NET verfügbar?
- 10. Welche freien Bildschirm Design Tools sind verfügbar
- 11. Welche Process.kill-Signale sind unter Windows verfügbar?
- 12. Welche Schriftarten sind auf Android verfügbar?
- 13. Welche .NET Mime Parsing-Bibliotheken sind verfügbar?
- 14. Welche alternativen Protokollbibliotheken von Log4j sind verfügbar?
- 15. Welche BASE-Datenbank-Entwicklungsanwendungen sind verfügbar?
- 16. Welche Sprachbibliotheken sind unter Linux verfügbar?
- 17. Welche Pakete sind für node.js verfügbar, um Bilder zuzuschneiden?
- 18. Symfony2 Validator-Meldung: Welche Variablen sind verfügbar?
- 19. Welche Zahlungsverarbeitungsframeworks wie ActiveMerchant sind für andere Sprachen verfügbar?
- 20. Welche Testframeworks sind für NI Lab Windows CVI verfügbar?
- 21. Welche Laufzeiteinstellungen für app.config-Dateien sind in .NET verfügbar?
- 22. Welche Optionen sind für Doctrine Doctrine_Core :: generateModelsFromDb verfügbar?
- 23. Welche iPhone APIs sind für internetbasierte Matchmaking-Spiele verfügbar?
- 24. Welche Alternativen für SDN-Steuerungen zu POX sind verfügbar?
- 25. Welche Entropiequellen sind auf Heroku verfügbar?
- 26. Welche neuen Browserfunktionen sind heute verfügbar?
- 27. Welche Datenstrukturen sind im Linux-Kernel verfügbar?
- 28. Welche Standalone-Java-Parser sind verfügbar?
- 29. Welche Konsolenausgabebefehle sind in Erlang verfügbar?
- 30. Spring resttemplate ausstellen, welche Dienste verfügbar sind
Danke, aber ich spreche nicht über SignalR Framework-Version, sondern ich spreche über meine eigenen Versionen von Hubs und Clients mit SignalR gebaut – BCA