c# - Cmdlet C# 完成

标签 c# powershell-cmdlet

所以我在 C# 中使用 cmdlet,并使用派生自 PSCmdlet 的基本 cmdlet。

像这样:子 <- 父 <- PSCmdlet。

我们使用 Parent cmdlet 中的方法登录系统。但有时事情并不总是会出现异常、崩溃等情况。所以它并没有真正正确注销。

我的问题如下: 是否存在我可以在 Parent cmdlet 中实现/覆盖的方法,无论发生什么情况,它都会运行,以便我们可以正确注销?有点像最后尝试。 我已经检查了 EndProcessing() 和 StopProcessing(),但在不可预见的情况下它们并不能真正胜任这项任务。

编辑:需要澄清的是,有多个 cmdlet,而且这种情况不仅仅与登录有关。根据代码和用户输入,可能会发生多种异常。

最佳答案

正如@PetSerAl 所建议的那样,我的问题的解决方案是在 Parent 类中实现 IDisposable。 然后,无论发生什么情况,我都可以使用 Dispose() 添加完成 cmdlet 所需的任何方法。

关于c# - Cmdlet C# 完成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53414096/

相关文章:

c# - 在 WinRT 中编译并运行外部 Java 程序?

Powershell - 无法将 "System.Management.Automation.PSCustomObject"类型的值转换为 "System.Management.Automation.PSCustomObject"类型

sql-server - 使用 Powershell 从存储过程返回的数据(大型 XML 文件)从 ReportServer 输出 XML 时如何停止截断数据

azure-pipelines - Azure Pipeline - 术语 'Get-AzKeyVaultSecret' 未被识别为 cmdlet、函数、脚本的名称

c# - 在 C# 中创建线程池

c# - 使用不同的列模式将行从 DataTable 复制到另一个

c# - 使用 gsm 调制解调器从 C# 应用程序发送接收短信的基本概念

c# npoi excel 如何获取单元格的公式值?

Powershell不从模块导入函数

c# - 是否可以在 c# 中的 Powershell cmdlet 之间共享属性和注释?