2010-11-09 160 views
4

我很新的PowerShell。我已經構建了一個自定義cmdlet。我已經在powershell中註冊過它,但是我想在開始使用cmdlet之前對其進行測試。所以我添加了一個簡單的testapp到我的解決方案。我想打電話給我的自定義小命令如下所示:調用自定義cmdlet不起作用?

 var deploy = new DeployCommand(); 
     deploy.BranchDir = @""; 
     deploy.DevDir = @"d:\sandbox\testdeploy"; 
     deploy.Invoke(); 

我設置在我的cmdlet的一個破發點,當我執行.invoke它永遠不會做任何事情。我在我的cmdlet中重寫的唯一方法是「ProcessRecord」,但是當我調用它的時候,它從不做任何事情。我確定它很簡單。有誰知道我做錯了什麼?

回答

6

調用.Invoke()返回一個IEnumerator ...您必須迭代它(例如調用MoveNext())以便實際調用cmdlet。看到的評論MSDN docs page

+0

謝謝周杰倫。我知道這真的很簡單。我感謝您的幫助。 – coding4fun 2010-11-09 20:49:24