Вызов пользовательского командлета не работает?
-
30-09-2019 - |
Вопрос
Я довольно новичок в PowerShell. Я построил пользовательский командлет. Я уже зарегистрировался в PowerShell, но я хотел проверить его, прежде чем я начал использовать командлет. Поэтому я добавил в свое решение простой TestApp. Я пытаюсь назвать свой пользовательский командлет, как следующее:
var deploy = new DeployCommand();
deploy.BranchDir = @"";
deploy.DevDir = @"d:\sandbox\testdeploy";
deploy.Invoke();
Я установил точку перерыва в своем командномлете, и когда я выполняю. INVOKE, он никогда ничего не делает. Единственный метод, который я переопределяю в своем командлете, - это «процесс -рекорд», но когда я звоню, inloke, он никогда ничего не делает. Я уверен, что это что -то простое. Кто -нибудь знает, что я делаю не так?
Решение
Calling .invoke () возвращает ienumerator ... Вы должны итерации его (например, Call Movenext ()), чтобы командлет фактически был вызван. Смотрите замечания на MSDN DOCS PAGE