Compartir a través de


Cómo llamar a un método de clase de objeto Configuration Manager mediante código administrado

Para llamar a un método de clase proveedor de SMS, en Configuration Manager, use el método ExecuteMethod. Rellena un objeto Dictionary con los parámetros del método y el valor devuelto es un objeto IResultObject que contiene el resultado de la llamada al método.

Nota:

Para llamar a un método en una instancia de objeto, use el método ExecuteMethod en la instancia del objeto IResultObject .

Para llamar a un método de clase de objeto Configuration Manager

  1. Configure una conexión con el proveedor de SMS. Para obtener más información, consulte Aspectos básicos del proveedor de SMS.

  2. Cree los parámetros de entrada como un objeto Dictionary .

  3. Con la instancia del objeto WqlConnectionManager , llame a ExecuteMethod y especifique el nombre de clase y los parámetros de entrada.

  4. Recupere el valor devuelto del método de la propiedad ReturnValue en el objeto IResultObject devuelto.

Ejemplo

En el ejemplo siguiente se valida una consulta de regla de colección llamando al método de clase ValidateQuery de la clase SMS_CollectionRuleQuery.

Para obtener información sobre cómo llamar al código de ejemplo, vea Llamar a fragmentos de código de Configuration Manager.

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

Este método de ejemplo tiene los parámetros siguientes:

Parámetro Tipo Descripción
connection - Administrado: WqlConnectionManager Una conexión válida al proveedor de SMS.
wqlQuery - Administrado: IResultObject Cadena de consulta WQL. En este ejemplo, SELECT * FROM SMS_R_System es una consulta válida.

Compilar el código

Espacios de nombres

System

System.Collections.Generic

System.ComponentModel

Microsoft. ConfigurationManagement.ManagementProvider

Microsoft. ConfigurationManagement.ManagementProvider.WqlQueryEngine

Ensamblado

microsoft.configurationmanagement.managementprovider

adminui.wqlqueryengine

Programación sólida

Las excepciones Configuration Manager que se pueden generar son SmsConnectionException y SmsQueryException. Estos se pueden detectar junto con SmsException.

Consulta también

Introducción a los objetosCómo conectarse a un proveedor de Configuration Manager mediante código administrado
Creación de un objeto Configuration Manager mediante código administrado
Cómo modificar un objeto Configuration Manager mediante código administrado
Cómo realizar una consulta de Configuration Manager asincrónica mediante código administrado
Cómo realizar una consulta de Configuration Manager sincrónica mediante código administrado
Cómo leer un objeto Configuration Manager mediante código administrado