OPCFoundation.NetStandard.Opc.Ua.Server 2.0.0-preview.6
OPC UA .NET Standard — Server
OPCFoundation.NetStandard.Opc.Ua.Server is the high-level OPC UA
server library. It contains StandardServer, the
MasterNodeManager, the core NodeManager / INodeManager surface,
the session manager, the subscription manager (including durable
subscriptions), the audit infrastructure, the request queue, and the
fluent builder.AddServer(...) DI surface.
Overview
Reference this package from every OPC UA server executable. It
provides everything you need to implement a custom server on top of
the UASC channel pipeline shipped by
OPCFoundation.NetStandard.Opc.Ua.Core.
Getting started
Implement your own NodeManager and register it with
StandardServer:
public sealed class MyServer : StandardServer
{
protected override MasterNodeManager CreateMasterNodeManager(
IServerInternal server,
ApplicationConfiguration configuration)
{
return new MasterNodeManager(server, configuration, null,
new MyNodeManager(server, configuration));
}
}
Then start the server via ApplicationInstance.StartAsync (in the
OPCFoundation.NetStandard.Opc.Ua.Configuration package), or host it
through the fluent services.AddOpcUa().AddServer(...) DI surface.
Applications that already own a classic configuration XML file can pass
it directly — AddServer("MyServer.Config.xml"), or as a Stream for
embedded resources — and keep every setting from the file while
adopting dependency injection. The
raw-socket opc.tcp:// binding is built in; reference the
OPCFoundation.NetStandard.Opc.Ua.Bindings.Https package to additionally
expose an https:// endpoint.
To expose a NodeSet2 XML document without generating a NodeManager, register it through the startup-time runtime loader:
services.AddOpcUa()
.AddServer(options => { /* server options */ })
.AddRuntimeNodeSet(
"Models/MyModel.NodeSet2.xml",
nodes => nodes.Variable<double>("Machines/Machine1/Temperature")
.OnRead(ReadTemperature));
The runtime loader supports grouped file and stream sources, orders included models by RequiredModel, and uses the server's default runtime complex-type support. See the Runtime NodeSets guide.
To add or reload a NodeSet after the server is running, inject INodeManagerLifecycle (or use StandardServer.NodeManagerLifecycle) and call AddRuntimeNodeSetAsync / ReloadRuntimeNodeSetAsync. The returned generation-aware registration can later be removed with RemoveAsync. Active monitored items retain their identity when compatible nodes remain, publish one BadNodeIdUnknown when their node disappears, and automatically recover when a compatible Node with the same NodeId returns. Namespace indexes and compatible runtime DataType registrations remain stable for the server lifetime.
Target frameworks
net472, net48, netstandard2.1, net8.0, net9.0,
net10.0.
Additional documentation
See the main repository README and the Sessions guide for the session / subscription model. Browse the documentation folder for guides on certificate management, transports, identity providers, alarms & conditions, historical access, and more.
Showing the top 20 packages that depend on OPCFoundation.NetStandard.Opc.Ua.Server.
| Packages | Downloads |
|---|---|
|
OPCFoundation.NetStandard.Opc.Ua.Gds.Server.Common
OPC UA GDS Server Class Library
|
6 |
|
OPCFoundation.NetStandard.Opc.Ua.Gds.Server.Common
OPC UA GDS Server Class Library
|
5 |
|
OPCFoundation.NetStandard.Opc.Ua.Gds.Server.Common
OPC UA GDS Server Class Library
|
4 |
.NET 10.0
- OPCFoundation.NetStandard.Opc.Ua.Configuration (>= 2.0.0-preview.6)
- Microsoft.Extensions.Options.ConfigurationExtensions (>= 10.0.12)
- OPCFoundation.NetStandard.Opc.Ua.Core.Schema (>= 2.0.0-preview.6)
- OPCFoundation.NetStandard.Opc.Ua.Core (>= 2.0.0-preview.6)
- Microsoft.Extensions.Hosting.Abstractions (>= 10.0.12)
- System.Threading.RateLimiting (>= 10.0.12)
- BitFaster.Caching (>= 2.6.1)
- Microsoft.Bcl.TimeProvider (>= 10.0.12)
- Microsoft.Extensions.Configuration (>= 10.0.12)
- Microsoft.Extensions.Configuration.Abstractions (>= 10.0.12)
- Microsoft.Extensions.DependencyInjection (>= 10.0.12)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.12)
- Microsoft.Extensions.Diagnostics (>= 10.0.12)
- Microsoft.Extensions.Http (>= 10.0.12)
- Microsoft.Extensions.Logging (>= 10.0.12)
- Microsoft.Extensions.Logging.Abstractions (>= 10.0.12)
- Microsoft.Extensions.Options (>= 10.0.12)
.NET 8.0
- System.Diagnostics.DiagnosticSource (>= 10.0.12)
- System.Formats.Asn1 (>= 10.0.12)
- System.Text.Json (>= 10.0.12)
- System.Threading.Channels (>= 10.0.12)
- System.Collections.Immutable (>= 9.0.0)
- Microsoft.Extensions.Options.ConfigurationExtensions (>= 10.0.12)
- Microsoft.Extensions.Logging.Abstractions (>= 10.0.12)
- OPCFoundation.NetStandard.Opc.Ua.Configuration (>= 2.0.0-preview.6)
- OPCFoundation.NetStandard.Opc.Ua.Core.Schema (>= 2.0.0-preview.6)
- OPCFoundation.NetStandard.Opc.Ua.Core (>= 2.0.0-preview.6)
- Microsoft.Extensions.Hosting.Abstractions (>= 10.0.12)
- System.Threading.RateLimiting (>= 10.0.12)
- BitFaster.Caching (>= 2.6.1)
- Microsoft.Extensions.Options (>= 10.0.12)
- Microsoft.Bcl.TimeProvider (>= 10.0.12)
- Microsoft.Extensions.Configuration.Abstractions (>= 10.0.12)
- Microsoft.Extensions.DependencyInjection (>= 10.0.12)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.12)
- Microsoft.Extensions.Diagnostics (>= 10.0.12)
- Microsoft.Extensions.Http (>= 10.0.12)
- Microsoft.Extensions.Logging (>= 10.0.12)
- Microsoft.Extensions.Configuration (>= 10.0.12)
.NET 9.0
- OPCFoundation.NetStandard.Opc.Ua.Configuration (>= 2.0.0-preview.6)
- OPCFoundation.NetStandard.Opc.Ua.Core.Schema (>= 2.0.0-preview.6)
- OPCFoundation.NetStandard.Opc.Ua.Core (>= 2.0.0-preview.6)
- System.Threading.RateLimiting (>= 10.0.12)
- BitFaster.Caching (>= 2.6.1)
- Microsoft.Bcl.TimeProvider (>= 10.0.12)
- Microsoft.Extensions.Configuration (>= 10.0.12)
- Microsoft.Extensions.Configuration.Abstractions (>= 10.0.12)
- Microsoft.Extensions.DependencyInjection (>= 10.0.12)
- Microsoft.Extensions.Hosting.Abstractions (>= 10.0.12)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.12)
- Microsoft.Extensions.Diagnostics (>= 10.0.12)
- Microsoft.Extensions.Logging (>= 10.0.12)
- Microsoft.Extensions.Http (>= 10.0.12)
- Microsoft.Extensions.Logging.Abstractions (>= 10.0.12)
- Microsoft.Extensions.Options (>= 10.0.12)
- Microsoft.Extensions.Options.ConfigurationExtensions (>= 10.0.12)
- System.Diagnostics.DiagnosticSource (>= 10.0.12)
- System.Formats.Asn1 (>= 10.0.12)
- System.Text.Json (>= 10.0.12)
- System.Threading.Channels (>= 10.0.12)
.NET Framework 4.8
- System.Threading.Channels (>= 10.0.12)
- System.Text.Json (>= 10.0.12)
- System.Threading.Tasks.Extensions (>= 4.6.3)
- System.Memory (>= 4.6.3)
- System.Runtime.CompilerServices.Unsafe (>= 6.1.2)
- Microsoft.Extensions.Configuration (>= 10.0.12)
- Microsoft.Extensions.DependencyInjection (>= 10.0.12)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.12)
- Microsoft.Extensions.Diagnostics (>= 10.0.12)
- Microsoft.Extensions.Http (>= 10.0.12)
- Microsoft.Bcl.TimeProvider (>= 10.0.12)
- Microsoft.Extensions.Logging (>= 10.0.12)
- Microsoft.Extensions.Options (>= 10.0.12)
- Microsoft.Extensions.Options.ConfigurationExtensions (>= 10.0.12)
- System.Buffers (>= 4.6.1)
- System.Collections.Immutable (>= 9.0.0)
- System.Diagnostics.DiagnosticSource (>= 10.0.12)
- System.Formats.Asn1 (>= 10.0.12)
- Microsoft.Extensions.Logging.Abstractions (>= 10.0.12)
- Microsoft.Bcl.HashCode (>= 6.0.0)
- Microsoft.Extensions.Configuration.Abstractions (>= 10.0.12)
- BouncyCastle.Cryptography (>= 2.7.0)
- Microsoft.Bcl.AsyncInterfaces (>= 10.0.12)
- OPCFoundation.NetStandard.Opc.Ua.Configuration (>= 2.0.0-preview.6)
- OPCFoundation.NetStandard.Opc.Ua.Core.Schema (>= 2.0.0-preview.6)
- OPCFoundation.NetStandard.Opc.Ua.Core (>= 2.0.0-preview.6)
- Microsoft.Extensions.Hosting.Abstractions (>= 10.0.12)
- System.Threading.RateLimiting (>= 10.0.12)
- BitFaster.Caching (>= 2.6.1)
.NET Standard 2.1
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.12)
- Microsoft.Extensions.Diagnostics (>= 10.0.12)
- Microsoft.Extensions.Http (>= 10.0.12)
- Microsoft.Extensions.Logging (>= 10.0.12)
- Microsoft.Extensions.Logging.Abstractions (>= 10.0.12)
- Microsoft.Extensions.Options (>= 10.0.12)
- Microsoft.Extensions.DependencyInjection (>= 10.0.12)
- Microsoft.Extensions.Options.ConfigurationExtensions (>= 10.0.12)
- System.Diagnostics.DiagnosticSource (>= 10.0.12)
- System.Formats.Asn1 (>= 10.0.12)
- System.IO.FileSystem.AccessControl (>= 5.0.0)
- System.Runtime.CompilerServices.Unsafe (>= 6.1.2)
- System.Text.Json (>= 10.0.12)
- System.Threading.Channels (>= 10.0.12)
- System.Collections.Immutable (>= 9.0.0)
- Microsoft.Extensions.Configuration.Abstractions (>= 10.0.12)
- Microsoft.Bcl.TimeProvider (>= 10.0.12)
- Microsoft.Extensions.Configuration (>= 10.0.12)
- OPCFoundation.NetStandard.Opc.Ua.Core.Schema (>= 2.0.0-preview.6)
- OPCFoundation.NetStandard.Opc.Ua.Core (>= 2.0.0-preview.6)
- Microsoft.Extensions.Hosting.Abstractions (>= 10.0.12)
- System.Threading.RateLimiting (>= 10.0.12)
- BitFaster.Caching (>= 2.6.1)
- Microsoft.Bcl.AsyncInterfaces (>= 10.0.12)
- OPCFoundation.NetStandard.Opc.Ua.Configuration (>= 2.0.0-preview.6)
.NET Framework 4.7.2
- Microsoft.Extensions.Hosting.Abstractions (>= 10.0.12)
- System.Threading.RateLimiting (>= 10.0.12)
- BitFaster.Caching (>= 2.6.1)
- BouncyCastle.Cryptography (>= 2.7.0)
- Microsoft.Bcl.AsyncInterfaces (>= 10.0.12)
- Microsoft.Bcl.HashCode (>= 6.0.0)
- OPCFoundation.NetStandard.Opc.Ua.Core (>= 2.0.0-preview.6)
- Microsoft.Bcl.TimeProvider (>= 10.0.12)
- Microsoft.Extensions.Configuration.Abstractions (>= 10.0.12)
- Microsoft.Extensions.DependencyInjection (>= 10.0.12)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.12)
- Microsoft.Extensions.Diagnostics (>= 10.0.12)
- Microsoft.Extensions.Http (>= 10.0.12)
- Microsoft.Extensions.Configuration (>= 10.0.12)
- OPCFoundation.NetStandard.Opc.Ua.Core.Schema (>= 2.0.0-preview.6)
- OPCFoundation.NetStandard.Opc.Ua.Configuration (>= 2.0.0-preview.6)
- Microsoft.Extensions.Logging.Abstractions (>= 10.0.12)
- Microsoft.Extensions.Options (>= 10.0.12)
- Microsoft.Extensions.Logging (>= 10.0.12)
- System.Buffers (>= 4.6.1)
- Microsoft.Extensions.Options.ConfigurationExtensions (>= 10.0.12)
- System.Collections.Immutable (>= 9.0.0)
- System.Diagnostics.DiagnosticSource (>= 10.0.12)
- System.Formats.Asn1 (>= 10.0.12)
- System.Runtime.CompilerServices.Unsafe (>= 6.1.2)
- System.Text.Json (>= 10.0.12)
- System.Threading.Channels (>= 10.0.12)
- System.Memory (>= 4.6.3)
- System.Threading.Tasks.Extensions (>= 4.6.3)
| Version | Downloads | Last updated |
|---|---|---|
| 2.0.1 | 0 | 12.10.2026 |
| 2.0.0 | 0 | 07.10.2026 |
| 2.0.0-preview.6 | 1 | 03.10.2026 |
| 2.0.0-preview.5 | 1 | 03.10.2026 |
| 2.0.0-preview.4 | 1 | 03.10.2026 |
| 2.0.0-preview.3 | 1 | 03.10.2026 |
| 1.5.378.182 | 0 | 04.10.2026 |
| 1.5.378.176 | 1 | 03.10.2026 |
| 1.5.378.156 | 1 | 03.10.2026 |
| 1.5.378.152 | 1 | 03.10.2026 |
| 1.5.378.145 | 1 | 03.10.2026 |
| 1.5.378.134 | 1 | 03.10.2026 |
| 1.5.378.106 | 1 | 03.10.2026 |
| 1.5.378.65 | 1 | 03.10.2026 |
| 1.5.378.10-preview | 1 | 03.10.2026 |
| 1.5.377.22 | 1 | 03.10.2026 |
| 1.5.377.21 | 1 | 03.10.2026 |
| 1.5.377.11-preview | 1 | 03.10.2026 |
| 1.5.376.244 | 1 | 03.10.2026 |
| 1.5.376.235 | 1 | 03.10.2026 |
| 1.5.376.213 | 1 | 03.10.2026 |
| 1.5.375.457 | 1 | 03.10.2026 |
| 1.5.375.443 | 1 | 03.10.2026 |
| 1.5.375.71-ECC-preview | 1 | 03.10.2026 |
| 1.5.374.176 | 1 | 03.10.2026 |
| 1.5.374.168 | 1 | 03.10.2026 |
| 1.5.374.158 | 1 | 03.10.2026 |
| 1.5.374.126 | 1 | 03.10.2026 |
| 1.5.374.124 | 1 | 03.10.2026 |
| 1.5.374.118 | 1 | 03.10.2026 |
| 1.5.374.78 | 1 | 03.10.2026 |
| 1.5.374.70 | 1 | 03.10.2026 |
| 1.5.374.61-preview | 1 | 03.10.2026 |
| 1.5.374.54 | 1 | 03.10.2026 |
| 1.5.374.50-preview | 1 | 03.10.2026 |
| 1.5.374.36 | 1 | 03.10.2026 |
| 1.5.374.33-preview | 1 | 03.10.2026 |
| 1.5.374.27 | 1 | 03.10.2026 |
| 1.5.374.26-preview | 1 | 03.10.2026 |
| 1.5.374-preview.g1a7d9b8e51 | 1 | 03.10.2026 |
| 1.5.373.121 | 1 | 03.10.2026 |
| 1.5.373.3-preview | 1 | 03.10.2026 |
| 1.5.372.113 | 1 | 03.10.2026 |
| 1.5.372.110-rc2 | 1 | 03.10.2026 |
| 1.5.372.1-rc | 1 | 03.10.2026 |
| 1.5.371.3-beta | 1 | 03.10.2026 |
| 1.5.368.5-beta | 1 | 03.10.2026 |
| 1.4.372.116-preview | 1 | 03.10.2026 |
| 1.4.372.112-preview | 1 | 03.10.2026 |
| 1.4.372.107 | 1 | 03.10.2026 |
| 1.4.372.106 | 1 | 03.10.2026 |
| 1.4.372.91-preview | 1 | 03.10.2026 |
| 1.4.372.76 | 1 | 03.10.2026 |
| 1.4.372.67-preview | 1 | 03.10.2026 |
| 1.4.372.56 | 1 | 03.10.2026 |
| 1.4.372.46-preview | 1 | 03.10.2026 |
| 1.4.372.38-preview | 1 | 03.10.2026 |
| 1.4.371.96 | 1 | 03.10.2026 |
| 1.4.371.91 | 1 | 03.10.2026 |
| 1.4.371.86 | 1 | 03.10.2026 |
| 1.4.371.60 | 1 | 03.10.2026 |
| 1.4.371.50 | 1 | 03.10.2026 |
| 1.4.371.41 | 1 | 03.10.2026 |
| 1.4.371-preview.ge89b06e57b | 1 | 03.10.2026 |
| 1.4.370.12 | 1 | 03.10.2026 |
| 1.4.370.9 | 1 | 03.10.2026 |
| 1.4.370.1 | 1 | 03.10.2026 |
| 1.4.369.30 | 1 | 03.10.2026 |
| 1.4.368.58 | 1 | 03.10.2026 |
| 1.4.368.53 | 1 | 03.10.2026 |
| 1.4.368.33 | 1 | 03.10.2026 |
| 1.4.367.100 | 1 | 03.10.2026 |
| 1.4.367.95 | 1 | 03.10.2026 |
| 1.4.367.75 | 1 | 03.10.2026 |
| 1.4.367.42 | 1 | 03.10.2026 |
| 1.4.367.41 | 1 | 03.10.2026 |
| 1.4.367.39 | 1 | 03.10.2026 |
| 1.4.366.38 | 1 | 03.10.2026 |
| 1.4.365.48 | 1 | 03.10.2026 |
| 1.4.365.23 | 1 | 03.10.2026 |
| 1.4.365.10 | 1 | 03.10.2026 |
| 1.4.365.2 | 1 | 03.10.2026 |
| 1.4.364.40 | 1 | 03.10.2026 |
| 1.4.363.107 | 1 | 03.10.2026 |