Anropa skript inuti en cmdlet

Det här exemplet visar hur du anropar ett skript som har angetts till en cmdlet. Skriptet körs av cmdleten och dess resultat returneras till cmdleten som en samling System.Management.Automation.PSObject-objekt.

Anropa ett skriptblock

  1. Kommandot verifierar att ett skriptblock har angetts till cmdleten. Om ett skriptblock har angetts anropar kommandot skriptblocket med de parametrar som krävs.

    if (script != null)
    {
      WriteDebug("Executing script block.");
    
      // Invoke the script block with the required arguments.
      Collection<PSObject> PSObjects =
                     script.Invoke(
                                   line,
                                   simpleMatch,
                                   caseSensitive
                                  );
    
  2. Skriptet itererar sedan genom den returnerade samlingen av System.Management.Automation.PSObject-objekt och utför nödvändiga åtgärder.

    foreach (PSObject psObject in psObjects)
    {
      if (LanguagePrimitives.IsTrue(psObject))
      {
        result = new MatchInfo();
        result.Line = line;
        result.IgnoreCase = !caseSensitive;
    
        break;
      }
    }
    
    

Se även

Skriva en Windows PowerShell-cmdlet