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 verzögerte Eigenschaft aus einem Configuration Manager Objekt zu lesen, das in einer Abfrage zurückgegeben wird, erhalten Sie das Objekt instance, das alle verzögerten Objekteigenschaften 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 Configuration Manager-Objekts mithilfe von verwaltetem Code.
Weitere Informationen finden Sie unter Configuration Manager Verzögerte Eigenschaften.
So lesen Sie verzögerte Eigenschaften
Richten Sie eine Verbindung mit dem SMS-Anbieter ein. Weitere Informationen finden Sie unter Herstellen einer Verbindung mit einem SMS-Anbieter in Configuration Manager mithilfe von verwaltetem Code.
Verwenden Sie das QueryProcessor-Objekt, um Configuration Manager Objekte abzufragen.
Durchlaufen Sie die Abfrageergebnisse.
Rufen Sie mit dem WqlConnectionManager , den Sie in Schritt 1 abrufen, GetInstance auf, um das IResultObject-Objekt für jedes abgefragte Objekt abzurufen, von dem Sie verzögerte Eigenschaften abrufen möchten.
Beispiel
Das folgende C#-Codebeispiel fragt alle SMS_Collection -Objekte ab und zeigt dann die Regelnamen an, die von der CollectionRules lazy-Eigenschaft abgerufen wurden.
Informationen zum Aufrufen des Beispielcodes finden Sie unter Aufrufen von Configuration 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 weist die folgenden Parameter auf:
| 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 Configuration Manager Ausnahmen, die ausgelöst werden können, sind SmsConnectionException und SmsQueryException. Diese können zusammen mit SmsException abgefangen werden.
Siehe auch
ObjektübersichtConfiguration Manager Verzögerte EigenschaftenAufrufen einer Configuration Manager Objektklassenmethode mithilfe von verwaltetem CodeHerstellen einer Verbindung mit einem Configuration Manager Anbieter mithilfe von verwaltetem CodeVorgehensweise: Erstellen einer Configuration Manager-Objekts mithilfe von verwaltetem CodeÄndern eines Configuration Manager-Objekts mithilfe von verwaltetem CodeAusführen einer asynchronen Configuration Manager Abfrage mithilfe von verwaltetem CodeVorgehensweise: Ausführen eines synchronen Objekts Configuration Manager Abfragen mithilfe von verwaltetem CodeHow to Read a Configuration Manager Object by Using Managed Code (Lesen eines Configuration Manager-Objekts mithilfe von verwaltetem Code)