我对PowerShell很陌生。我已生成自定义Cmdlet。我已经在PowerShell中注册了它,但我想在开始使用cmdlet之前对其进行测试。所以我在我的解决方案中添加了一个简单的测试应用程序。我尝试调用自定义Cmdlet,如下所示:
var deploy = new DeployCommand(); deploy.BranchDir = @""; deploy.DevDir = @"d:\sandbox\testdeploy"; deploy.Invoke();
我在我的Cmdlet中设置了一个断点,当我执行时,调用它不会做任何事情。我在Cmdlet中覆盖的唯一方法是“processRecord”,但当我调用Invoke时,它从不做任何事情。我相信这很简单。有人知道我做错了什么吗?
调用.invoke()返回IEnumerator…您必须迭代它(例如call moveNext())才能实际调用该Cmdlet。见评论 MSDN docs page