在访问和操作CIM自定义对象的EC属性时,我们会使用GetValue/GetArray/SetValue/SetArray函数,大但这些函数在功能上有限制: 只能直接操作内置类型的单值类型EC属性以及数组类型EC属性,那么如何访问自定义类型的单值和数组EC属性呢? 此时就需要使用accessString了。我们可能注意到了,上述4个函数都接受一个名为accessString的参数,其含义为待访问EC属性时的访问字符串。这个访问字符串用于唯一的标识将要被访问的属性,而且在C++和C#中完全相同。它的取值可分为两类:
立即属性名: 也就是直接使用需要被访问的EC属性的名称,此时这个属性将被整体操作,而不是逐元素、逐成员变量的操作,例如:
obj.SetValue(“Height”, 3.0); // C#: 设置单值属性Height的值为0
obj.SetValue(“Widths”, new double[]{ 1.5, 2.0, 2.5 }); // C#: 设置数值属性 Widths 的值
double height = obj.GetValue(“Height”); // C#: 获取单值属性Height的值