How to Call a Configuration Manager Object Class Method by Using Managed Code (Jak wywołać metodę klasy obiektu programu Configuration Manager przy użyciu kodu zarządzanego)

Aby wywołać metodę klasy dostawcy programu SMS, w Configuration Manager należy użyć metody ExecuteMethod . Wypełnianie obiektu słownika parametrami metody, a wartością zwracaną jest obiekt IResultObject , który zawiera wynik wywołania metody.

Uwaga

Aby wywołać metodę w wystąpieniu obiektu, należy użyć metody ExecuteMethod w wystąpieniu obiektu IResultObject .

Aby wywołać metodę klasy obiektu Configuration Manager

  1. Skonfiguruj połączenie z dostawcą programu SMS. Aby uzyskać więcej informacji, zobacz temat podstawowe informacje o dostawcy programu SMS.

  2. Utwórz parametry wejściowe jako obiekt słownika .

  3. Za pomocą wystąpienia obiektu WqlConnectionManager Wywołaj ExecuteMethod i określ nazwę klasy i parametry wejściowe.

  4. Pobierz wartość zwracaną z metody z właściwości ReturnValue w zwracanym obiekcie IResultObject .

Przykład

Poniższy przykład sprawdza poprawność zapytania o regułę kolekcji, SMS_CollectionRuleQuery wywołując metodę klasy validatequery Method in Class klasy.

Aby uzyskać informacje na temat wywoływania przykładowego kodu, zobacz wywoływanie Configuration Manager fragmentów kodu.

public void ValidateQueryRule(WqlConnectionManager connection, string wqlQuery)  
{  
    try  
    {  
        Dictionary<string,object> validateQueryParameters = new Dictionary<string,object>();  

        // Add the sql query as the WQLQuery parameter.  
        validateQueryParameters.Add("WQLQuery",wqlQuery);  

        // Call the method  
        IResultObject result=connection.ExecuteMethod("SMS_CollectionRuleQuery", "ValidateQuery", validateQueryParameters);  

        if (result["ReturnValue"].BooleanValue == true)  
        {  
            Console.WriteLine (wqlQuery + " is a valid query");  
        }  
        else  
        {  
            Console.WriteLine (wqlQuery + " is not a valid query");  
        }  
     }  
     catch (SmsException ex)  
     {  
           Console.WriteLine("Failed to validate query rule: ",ex.Message);  
           throw;  
     }  
}  

Ta przykładowa Metoda ma następujące parametry:

Parametr Typ Opis
connection -Zarządzane: WqlConnectionManager Prawidłowe połączenie z dostawcą programu SMS.
wqlQuery -Zarządzane: IResultObject Ciąg zapytania WQL. W tym przykładzie SELECT * FROM SMS_R_System jest to prawidłowe zapytanie.

Kompilowanie kodu

Przestrzenie nazw

System

System.Collections.Generic

System. ComponentModel

Microsoft.ConfigurationManagement. ManagementProvider

Microsoft.ConfigurationManagement. ManagementProvider. WqlQueryEngine

Zestaw

microsoft.configurationmanagement. managementprovider

adminui. wqlqueryengine

Niezawodne programowanie

Configuration Manager wyjątkami, które można podwyższyć, to SmsConnectionException i SmsQueryException. Można je przechwycić razem z SmsException.

Zobacz też

Obiekty — przegląd jak nawiązać połączenie z dostawcą Configuration Manager przy użyciu kodu zarządzanego
Jak utworzyć obiekt Configuration Manager za pomocą kodu zarządzanego
Jak zmodyfikować obiekt Configuration Manager za pomocą kodu zarządzanego
Jak wykonać asynchroniczne Configuration Manager zapytania przy użyciu kodu zarządzanego
Jak wykonać synchroniczne Configuration Manager zapytania przy użyciu kodu zarządzanego
Jak odczytać obiekt Configuration Manager za pomocą kodu zarządzanego