Så här anropar du en Configuration Manager objektklassmetod med hjälp av hanterad kod

Om du vill anropa en SMS-providerklassmetod i Configuration Manager använder du ExecuteMethod metoden . Du fyller i ett Dictionary-objekt med metodens parametrar och returvärdet är ett IResultObject-objekt som innehåller resultatet av metodanropet.

Obs!

Om du vill anropa en metod på en objektinstans använder du metoden ExecuteMethod på objektinstansen IResultObject .

Så här anropar du en objektklassmetod i Configuration Manager

  1. Konfigurera en anslutning till SMS-leverantören. Mer information finns i Grunderna för SMS-providern.

  2. Skapa indataparametrarna som ett ordlisteobjekt .

  3. Med hjälp av WqlConnectionManager-objektinstansen anropar du ExecuteMethod och anger klassnamnet och indataparametrarna.

  4. Hämta metodens returvärde från egenskapen ReturnValue i det returnerade IResultObject-objektet .

Exempel

I följande exempel verifieras en samlingsregelfråga genom att anropa klassmetoden ValidateQueryför SMS_CollectionRuleQuery klass.

Information om hur du anropar exempelkoden finns i Anropa Configuration Manager kodfragment.

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

Den här exempelmetoden har följande parametrar:

Parameter Typ Beskrivning
connection - Hanterad: WqlConnectionManager En giltig anslutning till SMS-leverantören.
wqlQuery - Hanterad: IResultObject En WQL-frågesträng. I det här exemplet SELECT * FROM SMS_R_System är en giltig fråga.

Kompilerar koden

Namnområden

System

System.Collections.Generic

System.ComponentModel

Microsoft.ConfigurationManagement.ManagementProvider

Microsoft.ConfigurationManagement.ManagementProvider.WqlQueryEngine

Montering

Microsoft.ConfigurationManagement.ManagementProvider

adminui.wqlqueryengine

Robust programmering

De Configuration Manager undantag som kan uppstå är SmsConnectionException och SmsQueryException. Dessa kan fångas tillsammans med SmsException.

Se även

Översikt över objektSå här ansluter du till en Configuration Manager -provider med hanterad kodSkapa ett Configuration Manager -objekt med hjälp av hanterad kodÄndra ett Configuration Manager -objekt med hjälp av hanterad kodSå här utför du en asynkron Configuration Manager Fråga med hjälp av hanterad kodUtföra en synkron Configuration Manager fråga med hjälp av hanterad kodSå här läser du ett Configuration Manager objekt med hjälp av hanterad kod