Чтение отложенных свойств с помощью управляемого кода
Чтобы считывать отложенное свойство из объекта Configuration Manager, возвращенного в запросе, вы получите экземпляр объекта , который извлекает все отложенные свойства объекта от поставщика SMS.
Примечание.
Если вы знаете полный путь к объекту WMI, вызов метода GetInstance возвращает объект WMI вместе с отложенными свойствами. Дополнительные сведения см. в статье Чтение объекта Configuration Manager с помощью управляемого кода.
Дополнительные сведения см. в разделе Configuration Manager Lazy Properties.
Чтение отложенных свойств
Настройте подключение к поставщику SMS. Дополнительные сведения см. в статье Подключение к поставщику SMS в Configuration Manager с помощью управляемого кода.
Используйте объект QueryProcessor для запроса объектов Configuration Manager.
Выполните итерацию результатов запроса.
Используя WqlConnectionManager , полученный на шаге 1, вызовите Метод GetInstance , чтобы получить объект IResultObject для каждого запрашиваемого объекта, из которого требуется получить отложенные свойства.
Пример
В следующем примере кода C# запрашивается все объекты SMS_Collection , а затем отображаются имена правил, полученные из отложенного CollectionRules
свойства.
Сведения о вызове примера кода см. в разделе Вызов фрагментов кода Configuration Manager.
public void ReadLazyProperty(WqlConnectionManager connection)
{
try
{
// Query all collections.
IResultObject collections = connection.QueryProcessor.ExecuteQuery("Select * from SMS_Collection");
foreach (IResultObject collection in collections)
{
// Get the collection object and lazy properties.
collection.Get();
Console.WriteLine(collection["Name"].StringValue);
// Get the rules.
List<IResultObject> rules = collection.GetArrayItems("CollectionRules");
if (rules.Count == 0)
{
Console.WriteLine("No rules");
Console.WriteLine();
continue;
}
foreach (IResultObject rule in rules)
{
// Display rule names.
Console.WriteLine("Rule name: " + rule["RuleName"].StringValue);
}
Console.WriteLine();
}
}
catch (SmsQueryException ex)
{
Console.WriteLine("Failed to get collection. Error: " + ex.Message);
throw;
}
}
Этот пример метода имеет следующие параметры:
Параметр | Тип | Описание |
---|---|---|
connection |
- WqlConnectionManager |
Допустимое подключение к поставщику SMS. |
Компиляция программы
Пространства имен
System;
System.Collections.Generic;
System.ComponentModel
Майкрософт. ConfigurationManagement.ManagementProvider
Майкрософт. ConfigurationManagement.ManagementProvider.WqlQueryEngine
Assembly
microsoft.configurationmanagement.managementprovider
adminui.wqlqueryengine
Надежное программирование
Configuration Manager исключения, которые могут быть вызваны: SmsConnectionException и SmsQueryException. Их можно поймать вместе с SmsException.
См. также
Общие сведения об объектахConfiguration Manager отложенные свойства
Вызов метода класса объектов Configuration Manager с помощью управляемого кода
Подключение к поставщику Configuration Manager с помощью управляемого кода
Создание объекта Configuration Manager с помощью управляемого кода
Изменение объекта Configuration Manager с помощью управляемого кода
Выполнение асинхронного запроса Configuration Manager с помощью управляемого кода
Выполнение синхронного запроса Configuration Manager с помощью управляемого кода
Чтение объекта Configuration Manager с помощью управляемого кода