Nodes 节点
ua.Nodes 是 Lazy Load 节点访问器, 让你像操作本地对象一样访问远程节点; 同时 DarraOpcUa 上一组 Browse 方法直接走 NodeId 字符串.
子页跳转
- 节点容器入口请参考 NodeCollection.
- 单节点包装请参考 OpcUaNode.
- 单层浏览请参考 Browse.
- 续翻分页请参考 BrowseNext.
- 含 ContinuationPoint 的浏览请参考 BrowseWithPaging.
- 路径批量解析请参考 TranslateBrowsePaths.
- 高频访问加速请参考 RegisterNodes.
三种访问节点的方式
// 方式 1: NodeId 字符串直接访问 (最直白, 最省 RPC)
using var dv = ua.Read("ns=2;s=Temperature");
// 方式 2: Lazy Load 索引器 (像本地对象, 探索式)
using var dv = ua.Nodes["ns=2;s=Temperature"].Value;
using var t = ua.Nodes.Server["ServerStatus"]["CurrentTime"].Value;
// 方式 3: 路径解析
var node = ua.Resolve("/Objects/Server/ServerStatus/CurrentTime");
using var dv = node.Value;
三种方式底层都走相同 RPC, 选你觉得最自然的就行.
选择指南
| 场景 | 推荐 |
|---|---|
| 已知精确 NodeId (生产代码) | 方式 1 字符串 |
| 标准 ns=0 节点 | 方式 2 + WellKnownNodes |
| 浏览树 / 一次性脚本 | 方式 2 索引器 |
| 100+ 路径批量初始化 | TranslateBrowsePaths |
| 长期运行高频访问 | RegisterNodes 加速 |