Neue ISession-Schnittstelle anstelle der Session-Klasse
Neue Funktionen
Server
- Unterstützung für asynchrone Methodenaufrufe durch Implementierung der Schnittstelle IAsyncNodeManager (siehe ConfigurationNodeManager für ein Anwendungsbeispiel)
- Neue Task-basierte Request Queue
- Neuer generierter Code mit asynchronen Methodenaufruf-Handlern & asynchrone Service-Aufrufe
- Neuer erweiterter CustomNodeManager mit Unterstützung für SamplingGroup-Mechanismus
GDS-Client
- stellt async APIS zur Verfügung und markiert sync apis als veraltet
Client
- Neuer LRU NodeCache hinzugefügt & verwendet in ComplexType System
Was sich geändert hat
- Update des GDS-Clients, um async Client API zu verwenden und sync Calls zu verwerfen. by @romanett in #3164
- Bump actions/checkout von 4 auf 5 von @dependabot[bot] in #3165
- Fix nuget und offizieller Build und zusätzliche kleinere analzyer Fixes von @marcschier in #3166
- Sync-Client-Aufrufe aus Async-Client-Tests entfernen von @romanett in #3168
- GDS-Tests sollen ECC für die Verbindung verwenden. Update der Zertifikatswarteprüfung zur Verwendung des Polling-Mechanismus. by @romanett in #3167
- Entfernen von strong namer, der nicht funktioniert und fork async add auto und... by @marcschier in #3175
- [Tests] Entfernen von net 462 CI / Hinzufügen von TestContext Logging Unterstützung für GDS Tests / Fix Tests für netstandard by @romanett in #3170
- Sync-Client-Api überflüssig machen von @marcschier in #3174
- Optimiert reflexionsbasierte Suchvorgänge mit Caches von @marcschier in #3179
- Neu eingeführte AsyncNodeTable- und AsyncTypeTree-Schnittstellen nach core verschieben von @marcschier in #3182
Breaking Changes
Server
- IMonitoredItem Interface erweitert & verwendet anstelle der Klasse MonitoredItem
- Neue ISession-Schnittstelle anstelle der Session-Klasse
- ISesssionManager, ISubscriptionManager, ISubscription & IServerInternal Schnittstellen erweitert
Kern
- ICertificateStore Async Methoden haben jetzt async Suffixe, alte Namen veraltet
- Alle veralteten Methoden entfernt
Client
- Alle Sync-Methoden sind jetzt als veraltet gekennzeichnet
- DataTypeDictionaries wurden in das ComplexTypes Paket verschoben. Wenn die Helper-Methoden der Session verwendet wurden, empfehlen wir das ComplexType System als Ersatz zu verwenden, das alle Server von OPC UA Spec 1.0 - 1.0.05 verarbeiten kann.
- NodeCache hat nun ein asynchrones Interface (um Zugriff auf das ITypeTable Interface zu haben, verwenden Sie die .TypeTree Eigenschaft oder die AsNodeTable Methode
Anwendungsinstanz
- Methoden, die eine Aufgabe zurückgeben, haben asynchrone Suffixe
GDS-Client
- sync apis als veraltet markiert
Fehlerbehebungen
Server
- Fix Subscription Keepalive wird bei der ersten Veröffentlichung gesendet
- Nicht gesendete Anfragen auf geschlossenem SecureChannel werden auf einem neuen Kanal der gleichen Sitzung gesendet
Client
- Deaktiviere Subscription cleanup wenn Subscriptions erstellt werden
- Behebt Abonnementlecks aufgrund von nicht abgeschlossenen PublishResponseMessageWorkerAsync-Aufgaben
- Behebt Abonnementlecks aufgrund von nicht abgeschlossenen PublishResponseMessageWorkerAsync-Aufgaben