Привязка экземпляров между пространствами имен
Класс представления ассоциаций позволяет использовать запросы ASSOCIATORS OF для классов, которые находятся в различных пространствах имен.
В следующей процедуре описывается связывание экземпляров между пространствами имен.
Связывание экземпляров между пространствами имен
Начните определение класса с квалификатора строк ассоциации .
JoinOn, ,и 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;
};