在命名空间之间关联实例
关联视图类允许对驻留在不同命名空间中的类使用 ASSOCIATORS OF 查询。
以下过程介绍如何在命名空间之间关联实例。
若要在命名空间之间关联实例
使用 Association 字符串限定符开始类定义。
限定符 JoinOn、Association 和 Union 相互排斥。
使用 ViewSources 限定符创建查询(该查询定义视图类中使用的源实例)。
使用 ViewSpaces 限定符定义源实例所在的命名空间的名称和位置。
使用 PropertySources 限定符在关联视图类中定义所需的属性。
如有必要,可以使用 HiddenDefault 限定符将任何属性标记为属于源类。
使用 Direct 限定符标记任何相关属性。
Direct 限定符可防止视图提供程序将已标记关联引用映射到视图引用。
以下代码示例演示如何创建关联视图类。
[union,
ViewSources {"SELECT * FROM Win32_OperatingSystem"},
ViewSpaces {"\\\\.\\root\\cimv2"},
dynamic, provider("MS_VIEW_INSTANCE_PROVIDER")
]
class Union_OS_For_AssociationExample
{
[key, PropertySources{"Name"}]
string Name;
[PropertySources{"Version"}]
string Version;
[PropertySources{"BuildNumber"}]
string BuildNumber;
};
[
Association,
ViewSources {"SELECT * FROM Win32_SystemOperatingSystem"},
ViewSpaces {"\\\\.\\root\\cimv2"},
dynamic, provider("MS_VIEW_INSTANCE_PROVIDER")
]
class Association_SystemViewOperatingSystem
{
[Direct, key, PropertySources{"GroupComponent"}]
Win32_ComputerSystem ref Computer;
[key, PropertySources{"PartComponent"}]
Union_OS_For_AssociationExample ref OperatingSystem;
};