Delen via


Een Configuration Manager-objectklassemethode aanroepen met behulp van beheerde code

Als u een SMS Provider-klassemethode wilt aanroepen, gebruikt u in Configuration Manager de methode ExecuteMethod. U vult een Dictionary-object met de parameters van de methode en de retourwaarde is een IResultObject-object dat het resultaat van de methodeaanroep bevat.

Opmerking

Als u een methode op een objectexemplaren wilt aanroepen, gebruikt u de methode ExecuteMethod op het IResultObject-objectexemplaren .

Een Configuration Manager-objectklassemethode aanroepen

  1. Een verbinding met de SMS-provider instellen. Zie Basisprincipes van SMS-provider voor meer informatie.

  2. Maak de invoerparameters als een woordenlijstobject .

  3. Roep ExecuteMethod aan met behulp van het WqlConnectionManager-objectexemplaren en geef de klassenaam en invoerparameters op.

  4. Haal de retourwaarde van de methode op uit de eigenschap ReturnValue in het geretourneerde IResultObject-object .

Voorbeeld

In het volgende voorbeeld wordt een verzamelingsregelquery gevalideerd door de SMS_CollectionRuleQuery klasse ValidateQuery-klassemethode aan te roepen.

Zie Aanroepen Configuration Manager codefragmenten voor meer informatie over het aanroepen van de voorbeeldcode.

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;  
     }  
}  

Deze voorbeeldmethode heeft de volgende parameters:

Parameter Type Beschrijving
connection - Beheerd: WqlConnectionManager Een geldige verbinding met de SMS-provider.
wqlQuery - Beheerd: IResultObject Een WQL-querytekenreeks. Voor dit voorbeeld SELECT * FROM SMS_R_System is een geldige query.

De code compileren

Naamruimten

Systeem

System.Collections.Generic

System.ComponentModel

Microsoft. ConfigurationManagement.ManagementProvider

Microsoft. ConfigurationManagement.ManagementProvider.WqlQueryEngine

Vergadering

microsoft.configurationmanagement.managementprovider

adminui.wqlqueryengine

Robuust programmeren

De Configuration Manager uitzonderingen die kunnen worden gegenereerd, zijn SmsConnectionException en SmsQueryException. Deze kunnen samen met SmsException worden gevangen.

Zie ook

Overzicht van objectenVerbinding maken met een Configuration Manager-provider met behulp van beheerde code
Een Configuration Manager-object maken met behulp van beheerde code
Een Configuration Manager-object wijzigen met behulp van beheerde code
Een asynchrone Configuration Manager-query uitvoeren met behulp van beheerde code
Een synchrone Configuration Manager-query uitvoeren met behulp van beheerde code
Een Configuration Manager-object lezen met behulp van beheerde code