opc-ua - 使用 UA-.NETStandard 访问已知类型中的节点的最简单方法是什么?
问题描述
概括
我正在为 Blazor 中的可视化做一个简单的概念证明。
我创建了一个演示服务器,该服务器表示一个设备,该设备公开一个带有两个“MeasurementType”实例的文件夹。这些类型是使用 ModelCompiler 生成的。“输出”的类型为“AnalogUnitRangeType”
地址空间:
+ Root
+ Objects
+ Equipment
+ Supply
+ Pressure of MeasurementType
+ Humidity of MeasurementType
测量类型:
+ Measurement
+ Output of AnalogUnitRangeType (double)
+ EURange
+ EngineeringUnits
我正在使用 Blazor 创建 UI,并使用 Opc Foundation Nuget 包来浏览服务器以动态生成用户界面。在这种情况下,这将是代表“压力”和“湿度”的两个分量
问题:
浏览服务器并查找已知的自定义类型(如 MeasurementType)时。访问子节点的最简单方法是什么?
我正在浏览所有节点并检查它们是否是这样的测量类型:
if (node.TypeDefinitionId.Identifier.ToString() ==
ObjectTypeIds.MeasurementType.Identifier.ToString())
当我找到类型时,我会继续浏览引用并在 displayName 上进行匹配以找到我需要的变量。因为我知道类型,所以可能有更简单的方法。
例如,我希望有可能做类似的事情?
if(node is MeasurementState)
{
var measurementNode = node as MeasurementState;
}
我浏览了这些样本,但必须承认我觉得它有点不知所措。如果您有任何好的资源来解释 opcfoundation sdk,我们也将不胜感激。
解决方案
推荐阅读
- laravel - 如何修复 Laravel 中的文件系统问题
- javascript - 对承诺感到困惑
- python - 在 python 上使用 selenium 控制的 Mozilla 从下拉列表中选择月份
- android - 如何使用自定义操作添加自定义编辑文本以单击光标?
- javascript - 如何在反应中隐藏重新渲染的字符串
- git - git rebase:传递多个策略选项
- jquery - 用于元素、ID 和样式的 jQuery 选择器
- python - Python vs Matlab 循环性能
- c# - 如何使用 mvvm 命令模式禁用/启用命令
- windows - 以管理员身份登录时无法运行 powershell 脚本