Powershell CmdLet和一次性字段/CA1001

Powershell CmdLet和一次性字段/CA1001,powershell,Powershell,cmdlet和一次性字段的公认模式是什么 FxCop规则是:拥有一次性字段的类型应该是一次性的 但除非PowerShell调用dispose方法。。。。它对实现该模式并没有真正的帮助 到目前为止,我使用Begin/EndProcessing方法来设置和清除字段 遗憾的是,我找不到任何有关PowerShell是否正确调用Dispose方法的文档。在实现Cmdlet(或PSCmdlet)派生的命令时,请实现IDisposable,并且PowerShell将在管道完成后为您处理命令。就这么简单。你是否

cmdlet和一次性字段的公认模式是什么

FxCop规则是:拥有一次性字段的类型应该是一次性的

但除非PowerShell调用dispose方法。。。。它对实现该模式并没有真正的帮助

到目前为止,我使用Begin/EndProcessing方法来设置和清除字段


遗憾的是,我找不到任何有关PowerShell是否正确调用Dispose方法的文档。

在实现Cmdlet(或PSCmdlet)派生的命令时,请实现IDisposable,并且PowerShell将在管道完成后为您处理命令。就这么简单。你是否看到与此相矛盾的行为

更新,一本关于你的书:

“…因此,需要对象清理的cmdlet应该 实现完整的IDisposable模式,包括终结器,以便 运行时可以调用 System.Management.Automation.Cmdlet.EndProcessing和Dispose方法 在处理结束时。”


发件人:

不,只是询问-在文档中根本找不到任何对cmdlet中IDisposable的引用。真的吗?我在谷歌上搜索了“pipeline idisposable”,它出现在结果的第二个链接中。我会用链接更新我的问题。谢谢。一定错过了那个。我查找的是Cmdlet IDisposable,而不是管道;)“Cmdlet idisposable”也是google搜索中的第二个链接。你是在告诉我猪肉吗D“Cmdlet idisposable powershell”是第一个结果。不是真的。可能是语言问题——我经常在这里得到有趣的结果。