Come sostituire i metodi di elaborazione degli inputHow to Override Input Processing Methods

In questi esempi viene illustrato come sovrascrivere i metodi di elaborazione dell'input all'interno di un cmdlet.These examples show how to overwrite the input processing methods within a cmdlet. Questi metodi vengono usati per eseguire le operazioni seguenti:These methods are used to perform the following operations:

Per eseguire l'override del metodo BeginProcessingTo override the BeginProcessing method

La classe seguente stampa un messaggio di esempio.The following class prints a sample message. Per usare questa classe, modificare il verbo e il sostantivo nell'attributo cmdlet, modificare il nome della classe in modo che corrisponda al nuovo verbo e al sostantivo, quindi aggiungere la funzionalità richiesta all'override del metodo System. Management. Automation. cmdlet. BeginProcessing .To use this class, change the verb and noun in the Cmdlet attribute, change the name of the class to reflect the new verb and noun, and then add the functionality you require to the override of the System.Management.Automation.Cmdlet.BeginProcessing method.

[Cmdlet(VerbsDiagnostic.Test, "BeginProcessingClass")]
public class TestBeginProcessingClassTemplate : Cmdlet
{
  // Override the BeginProcessing method to add preprocessing
  //operations to the cmdlet.
  protected override void BeginProcessing()
  {
    // Replace the WriteObject method with the logic required
    // by your cmdlet. It is used here to generate the following
    // output:
    // "This is a test of the BeginProcessing template."
    WriteObject("This is a test of the BeginProcessing template.");
  }
}

Per eseguire l'override del metodo ProcessRecordTo override the ProcessRecord method

La classe seguente stampa un messaggio di esempio.The following class prints a sample message. Per usare questa classe, modificare il verbo e il sostantivo nell'attributo cmdlet, modificare il nome della classe in modo che corrisponda al nuovo verbo e al sostantivo, quindi aggiungere la funzionalità richiesta all'override del metodo System. Management. Automation. cmdlet. ProcessRecord .To use this class, change the verb and noun in the Cmdlet attribute, change the name of the class to reflect the new verb and noun, and then add the functionality you require to the override of the System.Management.Automation.Cmdlet.ProcessRecord method.

[Cmdlet(VerbsDiagnostic.Test, "ProcessRecordClass")]
public class TestProcessRecordClassTemplate : Cmdlet
{
    // Override the ProcessRecord method to add processing
    //operations to the cmdlet.
    protected override void ProcessRecord()
    {
        // Replace the WriteObject method with the logic required
        // by your cmdlet. It is used here to generate the following
        // output:
        // "This is a test of the ProcessRecord template."
        WriteObject("This is a test of the ProcessRecord template.");
    }
}

Per eseguire l'override del metodo EndProcessingTo override the EndProcessing method

La classe seguente stampa un esempio.The following class prints a sample. Per usare questa classe, modificare il verbo e il sostantivo nell'attributo cmdlet, modificare il nome della classe in modo che corrisponda al nuovo verbo e al sostantivo, quindi aggiungere la funzionalità richiesta all'override del metodo System. Management. Automation. cmdlet. EndProcessing .To use this class, change the verb and noun in the Cmdlet attribute, change the name of the class to reflect the new verb and noun, and then add the functionality you require to the override of the System.Management.Automation.Cmdlet.EndProcessing method.

[Cmdlet(VerbsDiagnostic.Test, "EndProcessingClass")]
public class TestEndProcessingClassTemplate : Cmdlet
{
  // Override the EndProcessing method to add postprocessing
  //operations to the cmdlet.
  protected override void EndProcessing()
  {
    // Replace the WriteObject method with the logic required
    // by your cmdlet. It is used here to generate the following
    // output:
    // "This is a test of the BeginProcessing template."
    WriteObject("This is a test of the EndProcessing template.");
  }
}

Vedere ancheSee Also

System. Management. Automation. cmdlet. BeginProcessingSystem.Management.Automation.Cmdlet.BeginProcessing

System. Management. Automation. cmdlet. EndProcessingSystem.Management.Automation.Cmdlet.EndProcessing

System. Management. Automation. cmdlet. ProcessRecordSystem.Management.Automation.Cmdlet.ProcessRecord

Scrittura di un cmdlet di Windows PowerShellWriting a Windows PowerShell Cmdlet