# Client-Entwicklung

> Clients mit dem OPC UA .NET SDK entwickeln: Einführung, erste Schritte und alle Themen vom Lesen und Schreiben bis zu Konfiguration und Auslieferung.

OPC UA Clients mit dem OPC UA .NET SDK entwickeln.

Dieses Kapitel führt durch die Entwicklung von OPC UA Clients mit dem OPC UA .NET SDK. Wer neu einsteigt, beginnt mit der Einführung und den ersten Schritten. Alle weiteren Seiten lassen sich unabhängig voneinander lesen.

## Grundlagen

- [Einführung](https://www.traeger.de/docs/development/opcua/client/introduction): Die Konzepte, die jede Client-Entwicklung mit dem OPC UA .NET SDK voraussetzt: Verbindungsaufbau, Verbindungsparameter, Endpunkte und Sicherheit.

- [Erste Schritte](https://www.traeger.de/docs/development/opcua/client/getting-started): Den ersten Client mit dem OPC UA .NET SDK aufsetzen: Namespace einbinden, Verbindung aufbauen und wieder trennen, auch für OPC Classic Server.

- [Konfiguration](https://www.traeger.de/docs/development/opcua/client/configuration): Den Client konfigurieren: Anwendung, Verbindungsüberwachung, Grenzen der Datenübertragung, Zertifikat und XML-Konfiguration.

## Daten

- [Werte lesen und schreiben](https://www.traeger.de/docs/development/opcua/client/read-write-values): Werte einzelner und mehrerer Nodes lesen und schreiben, andere Attribute und Teile von Arrays ansprechen und Ergebnisse mit Status auswerten.

- [Werte gebündelt verarbeiten](https://www.traeger.de/docs/development/opcua/client/bulk-access): Tausende Werte mit einem Aufruf lesen, schreiben und abonnieren: wie das SDK große Anfragen an die Grenzen des Servers anpasst und was sich wann lohnt.

- [Nodes browsen](https://www.traeger.de/docs/development/opcua/client/browse): Den Adressraum eines Servers untersuchen: vom ObjectsFolder aus Node für Node oder mehrere Ebenen in einem Durchgang.

- [Subscriptions](https://www.traeger.de/docs/development/opcua/client/subscriptions): Wertänderungen und Ereignisse von Nodes per Subscription abonnieren, Benachrichtigungen behandeln, Subscriptions verwalten und mit Filtern eingrenzen.

- [Strukturierte Daten](https://www.traeger.de/docs/development/opcua/client/structured-data): Auf strukturierte Datentypen zugreifen, einfach, namenbasiert, dynamisch oder typisiert, und Datentypen generieren und definieren.

- [Historische Daten](https://www.traeger.de/docs/development/opcua/client/historical-data): Historische Werte eines Nodes über Zeiträume, zu Zeitpunkten und aggregiert lesen, ändern und löschen sowie die Ereignis-Historie lesen.

- [Node-Typen](https://www.traeger.de/docs/development/opcua/client/node-types): Mit Methoden-, Datei-, Datentyp-, Variablen- und Datenpunkt-Nodes arbeiten, auch für analoge Werte.

- [Dateien lesen und schreiben](https://www.traeger.de/docs/development/opcua/client/file-access): Auf Datei-Nodes eines Servers zugreifen: Inhalte lesen und anhängen, Dateien als Stream öffnen, Rechte prüfen und Fehler behandeln.

## Ereignisse und Alarme

- [Ereignisse](https://www.traeger.de/docs/development/opcua/client/events): Ereignisse eines Servers empfangen, filtern und auswerten, mit Ereignis-Nodes arbeiten und Audit-Ereignisse empfangen.

- [Alarme und Bedingungen](https://www.traeger.de/docs/development/opcua/client/alarms-conditions): Ereignis-Nodes mit Bedingungen: Dialog- und Feedback-Bedingungen, Alarm-Bedingungen bis zu Grenzwert-Alarmen.

## Erweitert

- [Adressraum bearbeiten](https://www.traeger.de/docs/development/opcua/client/address-space): Nodes und Verweise im Adressraum eines Servers vom Client aus erstellen und löschen.

- [OPC Classic](https://www.traeger.de/docs/development/opcua/client/opc-classic): Mit demselben OpcClient auf OPC DA, OPC AE und OPC HDA Server zugreifen: Funktionsumfang, Nodes, entfernte Server über DCOM und Server suchen.

## Betrieb

- [Clients für den Dauerbetrieb](https://www.traeger.de/docs/development/opcua/client/long-running-clients): Clients für den Dauerbetrieb: wie das SDK Verbindungsabbrüche erkennt, Sitzungen und Subscriptions wiederherstellt und was die Anwendung selbst übernimmt.

- [Fehler behandeln](https://www.traeger.de/docs/development/opcua/client/error-handling): Wann der Client ein Ergebnis mit Status liefert und wann er eine OpcException auslöst, wie Sie beides auswerten und welche Statuscodes häufig sind.

- [Clients testen](https://www.traeger.de/docs/development/opcua/client/testing): Client-Logik in automatisierten Tests ohne Anlage prüfen: einen OpcServer mit Test-Nodes im selben Prozess starten und gegen ihn testen.

- [Anwendung ausliefern](https://www.traeger.de/docs/development/opcua/client/deployment): Eine Clientanwendung ausliefern: Dateien und Abhängigkeiten, Netzwerk, eigenes Anwendungszertifikat, XML-Konfiguration und Lizenzierung.

- [Clients absichern](https://www.traeger.de/docs/development/opcua/security/client): Den Client absichern: Endpunkt wählen, Serverzertifikate prüfen, das eigene Zertifikat schützen, Benutzer anmelden, Checkliste für den Betrieb.
