Client development
Develop OPC UA clients with the OPC UA .NET SDK.
This chapter guides you through developing OPC UA clients with the OPC UA .NET SDK. If you are new to the SDK, start with the introduction and getting started. You can read all other pages independently of each other.
Basics
Introduction
The concepts that every client development with the OPC UA .NET SDK builds on: connecting, connection parameters, endpoints, and security.
Getting started
Set up your first client with the OPC UA .NET SDK: import the namespace, connect, and disconnect again, also for OPC Classic servers.
Configuration
Configure the client: application, connection monitoring, data transfer limits, certificate, and XML configuration.
Data
Read and write values
Read and write the values of single and multiple nodes, access other attributes and parts of arrays, and evaluate the results with their status.
Process many values efficiently
Read, write, and subscribe to thousands of values with one call: how the SDK adapts large requests to the limits of the server, and what pays off when.
Browse nodes
Explore the address space of a server: node by node from the ObjectsFolder, or several levels in one pass.
Subscriptions
Subscribe to value changes and events of nodes, handle notifications, manage subscriptions, and narrow them down with filters.
Structured data
Access structured data types in a simple, name-based, dynamic, or typed way, and generate and define data types.
Historical data
Read the historical values of a node over time ranges, at specific times, and aggregated, modify and delete them, and read the event history.
Node types
Work with method, file, data type, variable, and data item nodes, including analog values.
Read and write files
Access the file nodes of a server: read and append content, open files as a stream, check permissions, and handle errors.
Events and alarms
Advanced
Operation
Long-running clients
Clients for continuous operation: how the SDK detects connection breaks, restores sessions and subscriptions, and what the application handles itself.
Handle errors
When the client returns a result with a status and when it throws an OpcException, how to evaluate both, and which status codes are common.
Test clients
Test client logic in automated tests without a plant: start an OpcServer with test nodes in the same process and test against it.
Deploy the application
Deploy a client application: files and dependencies, network, your own application certificate, XML configuration, and licensing.
Secure clients
Secure the client: choose an endpoint, validate server certificates, protect your own certificate, authenticate users, and use a checklist for production.

