Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Um eine Lazy-Eigenschaft aus einem in einer Abfrage zurückgegebenen Konfigurations-Manager-Objekt zu lesen, erhalten Sie die Object-Instance, die alle Lazy-Object-Eigenschaften vom SMS-Anbieter abruft.
Hinweis
Wenn Sie den vollständigen Pfad zum WMI-Objekt kennen, gibt ein Aufruf der GetInstance-Methode das WMI-Objekt zusammen mit allen verzögerten Eigenschaften zurück. Weitere Informationen finden Sie unter Lesen eines Konfigurations-Manager-Objekts mithilfe von verwaltetem Code.
Weitere Informationen finden Sie unter Lazy Properties in Konfigurations-Manager.
Lazy Properties lesen
Richten Sie eine Verbindung mit dem SMS-Anbieter ein. Weitere Informationen finden Sie unter Herstellen einer Verbindung mit einem SMS-Anbieter in Konfigurations-Manager mithilfe von verwaltetem Code.
Verwenden Sie das QueryProcessor-Objekt, um Konfigurations-Manager-Objekte abzufragen.
Durchlaufen Sie die Abfrageergebnisse.
Rufen Sie GetInstance mithilfe des WqlConnectionManager auf, den Sie in Schritt eins abrufen, um das IResultObject-Objekt für jedes abgefragte Objekt abzurufen, von dem Sie Lazy-Eigenschaften abrufen möchten.
Beispiel
Das folgende C#-Codebeispiel fragt alle SMS_Collection Objekte ab und zeigt dann Regelnamen an, die aus der CollectionRules Lazy-Eigenschaft abgerufen wurden.
Informationen zum Aufrufen des Beispielcodes finden Sie unter Aufrufen von Konfigurations-Manager-Codeausschnitten.
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;
}
}
Diese Beispielmethode hat die folgenden Parameter:
| Parameter | Typ | Beschreibung |
|---|---|---|
connection |
WqlConnectionManager |
Eine gültige Verbindung mit dem SMS-Anbieter. |
Kompilieren des Codes
Namespaces
System
System.Collections.Generic
System.ComponentModel
Microsoft.ConfigurationManagement.ManagementProvider
Microsoft.ConfigurationManagement.ManagementProvider.WqlQueryEngine
Assembly
Microsoft.configurationmanagement.managementprovider
adminui.wqlqueryengine
Robuste Programmierung
Die Konfigurations-Manager-Ausnahmen, die ausgelöst werden können, sind SmsConnectionException und SmsQueryException. Diese können zusammen mit SmsException abgefangen werden.
Siehe auch
Verzögerte Eigenschaften von Konfigurations-Manager
Aufrufen einer Konfigurations-Manager-Objektklassenmethode mithilfe von verwaltetem Code
Herstellen einer Verbindung mit einem Konfigurations-Manager-Anbieter mithilfe von verwaltetem Code
Erstellen eines Konfigurations-Manager-Objekts mithilfe von verwaltetem Code
So ändern Sie ein Konfigurations-Manager-Objekt mithilfe von verwaltetem Code
Ausführen einer asynchronen Konfigurations-Manager-Abfrage mithilfe von verwaltetem Code
Ausführen einer synchronen Konfigurations-Manager-Abfrage mithilfe von verwaltetem Code
Lesen eines Konfigurations-Manager-Objekts mithilfe von verwaltetem Code